#include <iostream>

#include <pthread.h>

#include <errno.h>//错误信息的头文件

#include <sys/types.h>

#include <unistd.h>

using namespace std;

 

void * mypthread(void *arg)

{

        cout<<"子线程创建成功"<<endl;

        return 0;//子子线程不可以用return;

}

int main(){

        pthread_t thread;//子线程

 

        //创建新线程

        int ret=  pthread_create(&thread ,NULL, mypthread, NULL);

       

        if(ret!=0)

{

                cout<<"线程创建错误"<<endl;

        return -1;

        }

        else

        {

                cout<<"线程创建成功"<<endl;

        }

 

        sleep(3);

        return 0;

 

}

 

 //进行传参的子进程

 

void * mypthread(void *arg)

{

        int p;

        p= *(int*)arg;

        cout<<"子线程创建成功p="<<p   <<endl;

        return 0;

}

int main(){

        pthread_t thread;//子线程

        int p =100;

        //创建新线程

        ////int pthread_create(pthread_t *thread, const pthread_attr_t *attr,

        //                      void *(*start_routine) (void *), void *arg);

        int ret=  pthread_create(&thread ,NULL, mypthread,&p);

        //传整型用引用取地址方法

 

        if(ret!=0)

        {

                cout<<"线程创建错误"<<endl;

        return -1;

        }

        else

        {

 

 

                cout<<"线程创建成功"<<endl;

        }

 

        sleep(3);//初学者此处最好 加 等待时间   需要等待让子线程运行完毕

        return 0;

 

}

posted on 2022-03-15 19:46  down^to^earth  阅读(26)  评论(0)    收藏  举报