正在加载图片...
。7.1.4 Windows XP的同步机制 1.等待函数 Windows XP提供两个同步对象的等待函数:WaitForSingleObject::在指定时间内 等待指定的对象为可用;WaitForMultipleObjects::在指定时间内等待多个对象为可用。 ·当线程调用等待函数时,函数会检查要求等待的条件是否已得到满足。若条件不 满足,等待函数就会使调用的线程阻塞自身的执行,进入等待状态。处于等待条件满足 的时候,该线程不会占用处理器的时间:在等待的条件满足后,等待函数才会返回。 2.同步对象 .互斥对象Mutex:是Windows XP中用来实现线程互斥的对象,它相当与一个用于 互斥的信号量。由于互斥对象在任何时刻只能被一个线程使用,因此可用来协调线程间 对共享资源的访问。 ,Windows XP的信号量对象:是一个计数信号量,相当于用来管理有若干数量的某 种资源的信号量,它可以在多个进程中被线程共享。 。事件对象:相当于是一个“触发器”,可用来通知一个或多个线程某事件的发生。 Windows XP里提供的事件对象API函数有: (I)CreateEvent:.创建一个事件对象; (2)OpenEvent:得到一个已创建的事件对象,以方便对事件对象的后续访问: (3)SetEvent/PulseEvent::设置指定事件对象为可用对象: (4)ResetEvent:设置指定事件对象为不可用状态。 • 7.1.4 Windows XP的同步机制 1. 等待函数 Windows XP提供两个同步对象的等待函数:WaitForSingleObject:在指定时间内 等待指定的对象为可用;WaitForMultipleObjects: 在指定时间内等待多个对象为可用。 . 当线程调用等待函数时,函数会检查要求等待的条件是否已得到满足。若条件不 满足,等待函数就会使调用的线程阻塞自身的执行,进入等待状态。处于等待条件满足 的时候,该线程不会占用处理器的时间;在等待的条件满足后,等待函数才会返回。 . 2. 同步对象 互斥对象Mutex:是Windows XP中用来实现线程互斥的对象,它相当与一个用于 互斥的信号量。由于互斥对象在任何时刻只能被一个线程使用,因此可用来协调线程间 对共享资源的访问。 . . Windows XP的信号量对象:是一个计数信号量,相当于用来管理有若干数量的某 种资源的信号量,它可以在多个进程中被线程共享。 . 事件对象:相当于是一个“触发器”,可用来通知一个或多个线程某事件的发生。 Windows XP里提供的事件对象API函数有: (1) (3) (2) CreateEvent:创建一个事件对象; OpenEvent:得到一个已创建的事件对象,以方便对事件对象的后续访问; SetEvent/PulseEvent:设置指定事件对象为可用对象; (4) ResetEvent:设置指定事件对象为不可用状态
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有