#include #include #include void saying_pthread_name(void* ptr); int value=1; int main(void) { pthread_t wthread, bthread, rthread; char* wname = "white"; char* bname = "black"; char* rname = "red"; pthread_attr_t* pthread_attr_default = NULL; pthread_create(&wthread, pthread_attr_default, (void*)&saying_pthread_name, (void*) wname); pthread_create(&bthread, pthread_attr_default, (void*)&saying_pthread_name, (void*) bname); pthread_create(&rthread, pthread_attr_default, (void*)&saying_pthread_name, (void*) rname); pthread_join(wthread,NULL); //printf("%d\n", value); pthread_join(rthread,NULL); pthread_join(bthread,NULL); exit(0); } void saying_pthread_name(void* ptr) { char* message; message = (char*)ptr; printf("I am a %s pthread and the value is %d \n", message, value); value = value+1; }