Linux 简单的多线程实现

来源:互联网 发布:linux i have no name 编辑:程序博客网 时间:2024/06/05 06:58

功能描述:创建三个线程,分别执行三个 shell命令


#include <pthread.h>#include <stdio.h>#include <stdlib.h>#include <string.h>void *thread_function(void *arg){ char* cmd = (char*)arg; printf("cmd: %s \n",cmd); system(cmd);}void cmd (char * cmd1,char *cmd2,char * cmd3){pthread_t thread1,thread2,thread3;  /*char * cmd1 = "ls";char * cmd2 = "ls";char * cmd3 = "ls";*/    pthread_create(&thread1, NULL, thread_function, (void *)cmd1);  //创建线程pthread_create(&thread2, NULL, thread_function, (void *)cmd2);pthread_create(&thread3, NULL, thread_function, (void *)cmd3);    pthread_join(thread1, NULL);  //线程挂起pthread_join(thread2, NULL);    pthread_join(thread3, NULL);}int main(){cmd("ls","ls","ls");}


编译时记得链接线程库  -lpthread