Thursday, 21 March 2013

mutex simple c code


pthread_t tid[2];
int counter;
pthread_mutex_t lock;

void* doSomeThing(void *arg)

    unsigned long i = 0;
    counter += 1;
    printf("\n Job %d started\n", counter);

    for(i=0; i<(0xFFFFFFFF);i++); //this is just wait

    printf("\n Job %d finished\n", counter);


    return NULL;

int main(void)
    int i = 0;
    int err;

    if (pthread_mutex_init(&lock, NULL) != 0)
        printf("\n mutex init failed\n");
        return 1;

    while(i < 2)
        err = pthread_create(&(tid[i]), NULL, &doSomeThing, NULL);
        if (err != 0)
            printf("\ncan't create thread :[%s]", strerror(err));

    pthread_join(tid[0], NULL);
    pthread_join(tid[1], NULL);

    return 0;

No comments:

Post a Comment

Have some problem with this code? or Request the code you want if you cant find it in Blog Archive.