假设我有一个类似这样的代码:
void *my_thread(void *data)
{
while (1) { }
}
void foo_init(struct my_resource *res)
{
pthread_create(&res->tid, NULL, my_thread, res);
/* Some init code */
}
void foo_exit(void)
{
/* Some exit code */
}
Run Code Online (Sandbox Code Playgroud)
场景是这样的。当进程初始化时,foo_init()将使用指向我分配的资源的指针来调用该函数(分配是由其他函数自动完成的,该函数不受我的控制)。在函数中,我创建了一个pthread,它在无限循环中运行。
一段时间后,当进程即将终止时,该函数foo_exit()被调用,但这次没有指向我的资源的指针,因此我无法调用pthread_join(),因为 mytid包含在my_resource结构中。
现在我的问题是,与操作系统相关的资源是否pthreads会在操作系统终止进程时被销毁?如果是的话,我该如何确定。
另外,在不调用的情况下终止进程是否安全pthread_join()?
提前致谢。
我很想知道Board/Machine ID的重要性.我有几个问题:
任何其他信息.除了这些问题,欢迎.
提前致谢.
我有一个lat-long位置(每个存储为double),并希望通过仅使用GPS获得该点的相应高度.这应该在没有任何网络协助的情况下完成.
任何帮助表示赞赏.提前致谢.
android ×1
arm ×1
bootloader ×1
c ×1
c++ ×1
gps ×1
linux ×1
linux-kernel ×1
pthreads ×1
u-boot ×1