社区
C++ 语言
帖子详情
看不太懂,请指教,感谢拉。
HUHUJUNJIE
2004-06-22 05:00:59
thread[_nthreads] = new( (void *)&thread_obj[_nthreads] )
Cyg_Thread(CYG_SCHED_DEFAULT_INFO,
entry, data,
NULL, // no name
(CYG_ADDRESS)stack[_nthreads], STACKSIZE );
...全文
152
5
打赏
收藏
看不太懂,请指教,感谢拉。
thread[_nthreads] = new( (void *)&thread_obj[_nthreads] ) Cyg_Thread(CYG_SCHED_DEFAULT_INFO, entry, data, NULL, // no name (CYG_ADDRESS)stack[_nthreads], STACKSIZE );
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
HUHUJUNJIE
2004-06-23
打赏
举报
回复
还有就是thread_obj[_nthreads]本来应该就是个地址了。前面在加上个&就更加不明白了。
HUHUJUNJIE
2004-06-23
打赏
举报
回复
这是ECOS里面的一段CODE。
thread[_nthreads] = new( (void *)&thread_obj[_nthreads] )
Cyg_Thread(CYG_SCHED_DEFAULT_INFO,
entry, data,
NULL, // no name
(CYG_ADDRESS)stack[_nthreads], STACKSIZE );
我主要是不明白这里NEW的用法。
因为在Cyg_Thread 这个类里面和他的基类里面我都没有找到他的MEMBER FUNCTION NEW。
darkstar21cn
2004-06-22
打赏
举报
回复
这应该是定义的一个宏吧?
实现表面上能从类名称生成一个实例,实际上是调用了类的构造函数。
楼主可以看一下候俊杰的《深入浅出MFC》。
kaphoon
2004-06-22
打赏
举报
回复
楼主
那个是什么库
望介绍
HUHUJUNJIE
2004-06-22
打赏
举报
回复
static inline void *operator new(size_t size, void *ptr) { return ptr; };
#include <pkgconf/hal.h>
#ifdef CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
externC void
cyg_hal_invoke_constructors();
#endif
#ifdef NTHREADS
#ifndef STACKSIZE
#define STACKSIZE CYGNUM_HAL_STACK_SIZE_TYPICAL
#endif
static Cyg_Thread *thread[NTHREADS];
typedef CYG_WORD64 CYG_ALIGNMENT_TYPE;
static CYG_ALIGNMENT_TYPE thread_obj[NTHREADS] [
(sizeof(Cyg_Thread)+sizeof(CYG_ALIGNMENT_TYPE)-1)
/ sizeof(CYG_ALIGNMENT_TYPE) ];
static CYG_ALIGNMENT_TYPE stack[NTHREADS] [
(STACKSIZE+sizeof(CYG_ALIGNMENT_TYPE)-1)
/ sizeof(CYG_ALIGNMENT_TYPE) ];
static volatile int nthreads = 0;
static Cyg_Thread *new_thread(cyg_thread_entry *entry, CYG_ADDRWORD data)
{
int _nthreads = nthreads++;
CYG_ASSERT(_nthreads < NTHREADS,
"Attempt to create more than NTHREADS threads");
thread[_nthreads] = new( (void *)&thread_obj[_nthreads] )
Cyg_Thread(CYG_SCHED_DEFAULT_INFO,
entry, data,
NULL, // no name
(CYG_ADDRESS)stack[_nthreads], STACKSIZE );
thread[_nthreads]->resume();
return thread[_nthreads];
}
#endif // defined(NTHREADS)
#define CHECK(b) CYG_TEST_CHECK(b,#b)
#endif // ifndef CYGONCE_KERNEL_TESTS_TESTAUX
No1.初来乍到,
请
多
指教
首先,自我介绍一下:我是一只野生的程序猿,本科阶段学的非计算机专业,虽是工科,但并不
太
懂
程序的世界,然而,好在我们学院书记徐勇老师在我大二那年为我们专业的 同学开设了C语言的课程,让我初步踏入了程序员...
墨画子卿第一章第9节:
指教
暗卫书童皆家人,
指教
无情世道艰 待稳住心绪,白卿画一本正经地说道,“不过一无知莽汉。乐安,你信吗,别说半日,就是只剩一宿,我都能让你打得他哭爹喊娘!” 望着自家少爷手舞山水折扇这意气风发的样子,乐安是...
创业,不能兼职(34)--- 用例图原来是和我的word结构图很接近的东西
有些朋友,我真的
感谢
,他们会不嫌你白痴地耐心地
指教
你. 和这样的人交流,遇到问题时,他不会是以"你反正不
懂
,你不要管"这样的态度对待你.而是尽量用深入浅出的一些词语讲解给你听.或者指点你自己去了解一些...
尝试参考ros_arduino_bridge编写python版本的Youbot机器手的testing代码(序)
这是我人生第一次写博客,也是第一次的技术博客,不
懂
的
请
大家多多包涵和
指教
。 2.完成机器手的硬件设计后,就要测试控制系统了,之前一直断断续续看了些ROS的教程,还有在绝望的安装ROS系统的路上放弃了,最近直接...
Hello, Harmony
本人是第一次写鸿蒙的第一个程序,一边安装工具一边写博客,一边写代码一边写博客,难免有瑕疵,敬
请
指教
,
感谢
! 第一步,
请
先下载鸿蒙系统开发的专用工具DevEco Studio,连接地址如下(先注册华为账号,根据所需...
C++ 语言
64,683
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章