Question: Thread One (T1) void *do_work_one(void *param) Thread Two (T2) void do work two(void *param) pthread_mutex_lock(&M1): pthread_mutex_lock(&M2); Do some work pthread_mutex_unlock(8M2); pthread_mutex unlock(M1), pthread exit(0); pthread_mutex
Thread One (T1) void *do_work_one(void *param) Thread Two (T2) void do work two(void *param) pthread_mutex_lock(&M1): pthread_mutex_lock(&M2); Do some work pthread_mutex_unlock(8M2); pthread_mutex unlock(M1), pthread exit(0); pthread_mutex lock(& M2); pthread_mutex lock(&M1): Do somework/ pthread_mutex unlock(8/M1): pthread_mutex unlock(&M2); pthread exitos Thread One (T1) void *do_work_one(void *param) Thread Two (T2) void do work two(void *param) pthread_mutex_lock(&M1): pthread_mutex_lock(&M2); Do some work pthread_mutex_unlock(8M2); pthread_mutex unlock(M1), pthread exit(0); pthread_mutex lock(& M2); pthread_mutex lock(&M1): Do somework/ pthread_mutex unlock(8/M1): pthread_mutex unlock(&M2); pthread exitos
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
