bengold1979的专栏

埋头学习

C++构造函数相关的一点体会

         今早在调试自己手头一个项目的时候,突然发现它不能正常工作了。现象非常奇怪。在这个项目中我使用了临界区来控制线程的同步,结果在进入临界区时出错。        临界区的使用详解,请参考网上相关资料,或本人前面的一篇关于临界区的日志。该项目主要代码如下:// DetectServic...

2008-02-20 15:42:00

阅读数:671

评论数:0

多线程开发学习笔记之线程同步——事件

        事件,在我看来就是一种触发机制,即满足某一条件的触发。当线程需要等待某一事件的发生而不是一个资源的解锁,这在接收网络信息包或等待一个已完成某些任务的线程发出信号时非常有用。在Win32系统中,提供了事件对象。事件对象是同步对象中最简单的形式,也是最具有弹性的同步机制。其与互斥量和信...

2008-02-18 10:06:00

阅读数:1440

评论数:0

多线程开发学习笔记之线程同步——信号量

         信号量(Semaphore)和互斥量一样,属于内核对象。它自动执行可用资源查询的测试,如果有可用资源,则可用资源的计数减少,从而避免其它线程请求资源。当该线程释放该资源后,可用资源计数增加,则操作系统允许另一个线程请求资源。        信号量与临界区和互斥量的不同在于,它不能...

2008-02-15 11:18:00

阅读数:1882

评论数:0

多线程开发学习笔记之线程同步——互斥量

        上次简单学习了一下临界区,感觉有些自我陶醉,呵呵。今天就能加点难度(相对来说)——互斥量。互斥量的用途和临界区很像。它与临界区的差别在于可以跨线程使用,可以用来同步进行多个线程间的数据访问,但是是以牺牲速度为代价的。前面说过了,只有临界区是非核心对象,那么互斥量就是一个核心对象了。...

2008-02-05 10:17:00

阅读数:830

评论数:0

多线程开发学习笔记之线程同步——临界区

        在有几个线程并行运行的环境中,同步不同线程的活动是非常重要的。一般说来,一个线程使自己与另一个线程同步的方法是让自己睡眠。但线程睡眠时,操作系统不再为它调度CPU时间,因此它停止了执行。不过,就在它睡眠之前,它告诉系统要让它恢复执行,必须有什么“特殊事件”发生。操作系统记住该线程的...

2008-02-03 15:01:00

阅读数:2633

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭