释放保存pthread_t的结构对线程本身有什么影响?我有一个代表线程的结构:
typedef struct car{
int cur_place;
pthread_t car_thread;
}car;
我有一个保存这些汽车的数组,一段时间后,我想从线程内部释放结构,我的意思是:
void * car_thread(void * number){
int num = *(int *)number;
free(maze[num]);
maze[num] = NULL;
pthread_exit(NULL);
}
是否可以?我释放了持有线程的pthread之后,线程将如何处理?它会运行下一行吗?
提前致谢。
释放car
仅释放用于存储这些值的内存。该线程可能仍然在其他地方。可以pthread_t
简单地认为是持有系统用来谈论线程的数字或地址。不是线程本身。
只是不要car
在释放后引用任何地方的内存。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句