#include<stdio.h>
#include<pthread.h>
void *funcl(void *arg)
{
printf("t1: %ld thread is create\n",(unsigned long) pthread_self());//pthread_self()为获取线程ID号
printf("t1:param is %d\n",*((int *)arg));//打印主进程给的参数
}
int main()
{
int ret;
int param = 100;
pthread_t t1;
ret = pthread_create(&t1, NULL, funcl,(void *)¶m);//创建funcl线程,传参并 将返回值给ret
if(ret == 0){
printf("main:create t1 success\n");//说明创建成功
}
printf("main: %ld\n",(unsigned long)pthread_self());//获取线程ID号
while(1);//为了等待t1线程执行,不然没等运行,主进程就结束了
return 0;
}
~
执行显示:
CLC@Embed_Learn:~/liuzhihao$ ./a.out
main:create t1 success
main: 139744965641984
t1: 139744957355776 thread is create
t1:param is 100