摘要: 信号量对象对线程的同步方式与前面几种方法不同,信号允许多个线程和进程同时使用共享资源,这与操作系统中的PV操作相同。它指出了同时访问共享资源的线程最大数目。它允许多个线程在同一时刻访问同一资源,但是需要限制在同一时刻访问此资源的最大线程数目。在用CreateSem... 阅读全文
posted @ 2015-08-21 17:46 1点er执着 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 事件对象(Event Object),通过通知操作的方式来保持线程的同步,还可以方便实现对多个线程的优先级比较的操作。 事件包含一个使用计数(与所有内核对象一样),一个BOOL值(用于指明该事件是个自动重置的事件还是一个人工重置的事件),还有一个BOOL值(用... 阅读全文
posted @ 2015-08-21 17:10 1点er执着 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章复习了下临界区(Critical Section),现在来复习下互斥量对象(Mutex Object)。 其实互斥对象和临界区对象差不多,都是为了在多个线程访问公共数据块时,只允许一个线程访问此公共数据块。但是临界区是用户对象,互斥是内核对象;还有,... 阅读全文
posted @ 2015-08-21 16:15 1点er执着 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 现在来具体的说下个人对临界区对象的看法和理解。 上一篇文章说过,线程的同步互斥对象分为两种:用户对象和内核对象。临界区属于用户对象而不是内核对象。 临界区(Critical Section):通过对线程的串行化来访问公共资源或一段代码,速度快、适合控制数据的访问... 阅读全文
posted @ 2015-08-21 15:28 1点er执着 阅读(307) 评论(0) 推荐(0) 编辑
摘要:  在做项目时,难免会碰到多线程问题,在进行多线程编程时,难免会遇到多线程的互斥与同步操作。 线程的同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说或者可以这么理解,进程、线程同步,可理解为进程或线程A和B一块配合,A执行到... 阅读全文
posted @ 2015-08-21 11:10 1点er执着 阅读(246) 评论(0) 推荐(0) 编辑