网络编程技术实验2——Windows线程同步和互斥.docVIP

  • 11
  • 0
  • 约1.08万字
  • 约 10页
  • 2016-12-21 发布于湖北
  • 举报

网络编程技术实验2——Windows线程同步和互斥.doc

实验2 Windows线程同步和互斥 实验目的 1、了解Windows内核对线程同步的支持。 2、了解C的线程函数库及Windows 基本的线程API 函数的使用。 3、进一步理解线程的同步控制原理。 预备知识 一、Windows线程同步机制(注:互斥是同步的一种特例) 事件(Event) 临界区(Critical Section) 互斥量(Mutex) 信号量(Semaphore) 1、是否能跨进程使用? 互斥量、信号量、事件都可以跨进程来实现同步数据操作。 临界区只能用在同一进程的线程间互斥,因为临界区无名(无句柄)。如果只为了在进程内部用的话,使用临界区会带来速度上的优势并能够减少资源占用量。 2、其它区别 临界区:访问临界资源的代码段。课堂上讲过。(存钱、取钱的例子还记得吗?) 互斥量:资源独占使用 信号量:资源计数器 事件对象:可以通过“通知”的方式来保持线程的同步。事件是WIN32中最灵活的线程间同步机制。事件存在两种状态:激发状态(Signaled or True)未激发状态(Unsignaled or False)。 3、详细解释: (见下面实验内容每个程序前) 二、VC++(略) 实验内容 1、用事件(Event)对象来进行线程同步 事件可分为两类: 手动设置: 这种对象只可能用程序手动设置,在需要该事件或者事件发生时,采用SetEvent及ResetE

文档评论(0)

1亿VIP精品文档

相关文档