互斥与同步的区别互斥是进程间竞争共享资源的使用权这种竞争无固定的必然关系。同步是涉及共享资源的并发进程间有一种必然的依赖关系,即使没有进程在使用共享资源,尚未得到同步消息的进程仍不能去使用该资源
互斥与同步的区别 互斥是进程间竞争共享资源的使用权,这种竞争 无固定的必然关系。 同步是涉及共享资源的并发进程间有一种必然 的依赖关系,即使没有进程在使用共享资源,尚未 得到同步消息的进程仍不能去使用该资源
用信号量机制解决进程同步struct semaphore SC.SP=1.0number x, y, buffer;cobeginvoid CP(void)lcomputer process1while(1)/计算并将结果存于Xx = computer();P(SC );//请求存数buffer = x;/与打印进程同步V(SP);人voidPP(void)/lprintprocess(while( 1 )P//请求取数P(SP );y=buffer;V( SC);/与计算机进程同步print y number;Buffer11coend
用信号量机制解决进程同步 struct semaphore SC,SP=1,0; number x, y , buffer; cobegin void CP( void ) //computer process { while ( 1 ){ x = computer(); //计算并将结果存于x P( SC ); //请求存数 buffer = x; V( SP ); //与打印进程同步 } } void PP( void ) // print process { while( 1 ){ P( SP ); //请求取数 y=buffer; V( SC ); //与计算机进程同步 print y number; } } coend Buffer C P