假设我有一个声明的pthread_t结构,如下所示:

pthread_t newThread;

然后我调用:
pthread_join(&newThread, NULL, myMethod, NULL);

pthread_join()会做什么?

最佳答案

根据ISO C,newThread变量是“不确定值的对象”,其使用会触发未定义的行为。它可能具有触发CPU异常的“陷阱表示”。

或者它可能只是解释为该类型的随机值,API可以通过以下两种方式之一处理该值:要么没有此类线程,然后返回ESRCH,要么通过fl幸获得此类线程。然后出现各种情况:它是否可以连接,等等。

08-28 05:53