文件没有预定义。连续查找之后得知原因是链接不上pthread库
在执行命令后面加上pthread,即新命令格式为:gccoexe5exe5clpthread,重新执行后的结果显示如下截图:
ff其中1表示缓冲区被生产者producer1或者二producer2写入了Item,0表示没有写入数据或者被消费者co
sumer1或者co
sumer2消耗掉六、实验总结及思考
1、本次实验是关于生产者与消费者之间互斥和同步的问题。问题的是指是P、V操作,实验设一个共享缓冲区,生产者和消费者互斥的使用,当一个线程使用缓冲区的时候,另一个让其等待直到前一个线程释放缓冲区为止。
2、实验中包含的知识点很多,包括临界区资源共享问题、信号量定义、PV操作流程、进程间的通信方式(消息传递和共享内存)、进程同步和互斥、信号量机制解决进程之间的同步与互斥问题等等。加深了对于本部分内容的理解
通过本实验设计,我们对操作系统的P、V进一步的认识,深入的了解P、V操作的实质和其重要性。课本的理论知识进一步阐述了现实中的实际问题。
fr