多线程中的指针机制

时间:2016-07-12 09:06:21

标签: c++ multithreading pointers double-pointer

我在下面多线程示例中的指针机制中有一些混淆,标记为单个指针如何转换为双指针

#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>

void *worker_thread(void *arg)
{
        pthread_exit((void*)911);  /// <-- HERE
}

int main()
{
        int i;
        pthread_t thread;
        pthread_create(&thread, NULL, worker_thread, NULL);
        pthread_join(thread, (void **)&i);  /// <-- HERE       
        printf("%d\n",i);                   /// will print out 911

}

如果我想要返回一些整数值,如果代替下面的数字,则假设我将采用变量 int i = 911 API中的worker_thread并希望通过i API返回pthread_exit()如何操作以及如何通过pthread_join() API接收它,以及它的机制是什么?指针从单一转换为双。

0 个答案:

没有答案