白话并发冲突与线程同步(3)——Mutex、EventWaitHandle、AutoResetEvent 和 ManualResetEvent
摘要:
1-2-3翻开那《葵花宝典》,只见页首赫然写着几个大字:“欲练神功,必先自宫”,旁边几行歪歪扭扭的小字,又不知是哪位前辈高人所写:“在WC里占蹲位的3种方法:1. 如果你只对某个蹲位情有独钟,就要WaitOne(),但是不要忘了ReleaseMutex(),千万别WaitOne()两次只ReleaseMutex()一次(你干这种占着MK不LS的事,憋坏了后来的小朋友怎么办?就算没有小朋友,憋坏了小猫小狗也不好啊……);2. 如果你喜欢讲排场,需要占2个蹲位才肯办事,则要WaitAll(蹲位1和蹲位2);3. 如果你觉得随便去哪个蹲位办事都无所谓,那就可以WaitAny(蹲位1和蹲位2)……”。
阅读全文
posted @
2008-06-10 08:21
1-2-3
阅读(6832)
推荐(2) 编辑
白话并发冲突与线程同步(2)——Monitor、lock和死锁
摘要:
比尔盖茨叹道:“大哥,不行呀。你知道,Windows里会同时运行着上千个线程,且不说那些居心不良的病毒和木马,就是那些干正经事的线程,谁又能保证在你那个超长关键字里包裹的代码不会运行个二、三十秒?CPU可只有一个,在那个线程运行的二、三十秒里,整个Windows都会一动不动的,不知情的用户还以为是Windows又挂掉了,最后挨骂的可是兄弟我呦……
阅读全文
posted @
2008-06-02 08:35
1-2-3
阅读(6914)
推荐(2) 编辑