线程同步与互斥问题.docVIP

  • 9
  • 0
  • 约4.7万字
  • 约 12页
  • 2017-08-05 发布于河南
  • 举报
实验二 线程的同步和互斥问题 实验内容: 编写程序实现并发线程之间的同步和互斥问题。 线程间的互斥:并发执行的线程共享某些类临界资源,对临界资源的访问应当采取互斥的机制。 线程间的同步:并发执行的线程间通常存在相互制约的关系,线程必须遵循一定的规则来执行,同步机制可以协调相互制约的关系。 实验目的和要求 了解进程同步与互斥的概念,掌握编写进程同步、互斥的实例。 解决一类典型的进程间同步问题,如生产者-消费者问题,读者-写者问题等。 实验方法和步骤 实验方法 掌握同步与互斥的机制,选取合适的问题,给出演示程序的设计思想,包括流程图的形式;选取C、C++、VC、JAVA等计算机语言,编程调试,最终给出运行正确的程序。 程序设计 线程间互斥: 分析问题,创建多个线程,找出临界资源,划出正确的临界区,根据互斥机制的操作模式,编写程序。 互斥机制的操作模式: p(mutex);/*关锁*/ 临界区的操作; v(mutex);/*开锁*/ 线程间同步——读者-写者问题示例: 在Windows 2000 环境下,创建一个包含n 个线程的控制台进程。用这n 个线程来表示n个读者或写者。每个线程按相应测试数据文件的要求,进行读写操作。请用信号量机制分别实现读者优先和写者优先的读者-写者问题。 读者-写者问题的读写操作限制:   1)写-写互斥;  2)读-写互斥;  3)读-读允许; 运行结果

文档评论(0)

1亿VIP精品文档

相关文档