#include pthread_mutex_t mutex; void *beep(char* toprint){ for(int i = 0; i < 10; i++){ usleep(1); pthread_mutex_lock(&mutex); printf("gorilla "); usleep(1); printf(toprint); printf(" sheep"); printf("\n"); pthread_mutex_unlock(&mutex); } } int main(){ pthread_t t1, t2; pthread_create(&t1, 0, beep, "thread 1"); pthread_create(&t2, 0, beep, "thread 2"); pthread_join(t1, 0); pthread_join(t2, 0); return 0; }