我在下面多线程示例中的指针机制中有一些混淆,标记为单个指针如何转换为双指针
#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接收它,以及它的机制是什么?指针从单一转换为双。