我不确定这是否是 GCC 在编译期间正在纠正的问题,但我找不到关于哪个调用对pthread_create. 我已经看到教程中使用了这两种格式,但是似乎其中一种应该失败(除非编译器在幕后做一些事情以将其设置为正确的格式):
pthread_create (&thread, NULL, thread_func, (void *) var);
或者
pthread_create (&thread, NULL, &thread_func, (void *) var);
请注意,第一次调用传入函数指针,而第二次调用将地址传递给函数指针。似乎应该中断,但编译和执行都正确。
线程函数定义:
void *thread_func (void *var);