您的位置:首页 > 运维架构 > Linux

最简单的linux线程创建、共享变量

2014-04-16 23:07 246 查看
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>

static int SharedData = 4;//在线程中改变共享变量

void * create(void *arg)
{
printf("new pthread...\n");
printf("shard data = %d \n",SharedData);
SharedData++;
return (void*)(0);
}

main()
{
pthread_t tid;//线程号
printf("Thread is being created...\n");
int Status = pthread_create(&tid,NULL,create,NULL);
if(Status != 0)
{
printf("Thread creation failed.\n");
exit(EXIT_FAILURE);
}
printf("Main pid is %d\n",getpid());//获取进程ID
sleep(1);//进程睡眠一秒钟
if(SharedData != 4)
{
printf("SharedData is changed to %d\n",SharedData);
}
printf("Main pid is %d\n",getpid());
exit(EXIT_SUCCESS);
}

输出

Main pid is 5564
new pthread...
shard data = 4
SharedData is changed to 5
Main pid is 5564
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: