天天看點

Linux 多程序程式設計demo

随手記一個Linux多程序的demo, 友善以後自己檢視。

/* pthread.c Linux 下多線程demo程式 */

#include<stdio.h>
#include<stdlib.h>
#include<pthread.h>

void thread1(void)
{
    int i=0;
    for(i=0; i<3; i++)
        printf("This is in thread1\n");
}

void thread2(void)
{
    int i=0;
    for(i=0; i<3; i++)
        printf("This is in thread2\n");
}

int main(void)
{
    pthread_t id1, id2;
    int i, ret1, ret2;
    
    ret1=pthread_create(&id1, NULL, (void *)thread1, NULL)
    if(ret1!=0)
    {
        printf("Create pthread1 error!\n")
        exit(1);
    }

    ret2=pthread_create(&id2, NULL, (void *)thread2, NULL)
    if(ret2!=0)
    {
        printf("Create pthread2 error!\n")
        exit(1);
    }

// main process
    for(i=0; i<3; i++)
        priintf("This is the main process.\n");
    
    printf("id1=%ld, id2=%ld\n", id1, id2);

// start pthread
    pthread_join(id1, NULL);
    pthread_join(id2, NULL);

    return 0;
}
           

編譯指令 

gcc pthread.c -lpthread -o pthread
           

繼續閱讀