-
-
[讨论]还是关于自旋锁的问题
-
发表于: 2014-6-6 15:25 2618
-
Never call IoCompleteRequest while holding a spin lock. Attempting to complete an IRP while holding a spin lock can cause deadlocks.
这是msdn上说的
windows驱动开发详解上却说取消irp例程中是先IocompleteRequest,然后ioReleaseCancelSpinLock
我又糊涂了,这怎么矛盾的?
有自旋锁时,调用IoCompleteRequest 会死锁的道理是什么?是必然死锁,还是在某种情况下才死锁
加个问题
startio已经是运行在dispatch了,没处理完的话,其他线程没有机会运行,那startio又怎么会形成irp队列呢?来一个处理一个,没机会排成队啊
这是msdn上说的
windows驱动开发详解上却说取消irp例程中是先IocompleteRequest,然后ioReleaseCancelSpinLock
我又糊涂了,这怎么矛盾的?
有自旋锁时,调用IoCompleteRequest 会死锁的道理是什么?是必然死锁,还是在某种情况下才死锁
加个问题
startio已经是运行在dispatch了,没处理完的话,其他线程没有机会运行,那startio又怎么会形成irp队列呢?来一个处理一个,没机会排成队啊
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
- [求助]apc执行的问题 2664
- [求助]关于驱动的一个问题 3387
- [求助]关于dipatch level 3913
- [讨论]关于startio的问题 2581
- [讨论]还是关于自旋锁的问题 2619
赞赏
雪币:
留言: