防止用户模式APC进入用户模式

时间:2018-09-14 04:35:00

标签: c# c++ windows winapi

内核模式代码可以prevent some or all asynchronous procedure calls (APCs) by entering a critical or guarded region or by Raising the current IRQL。这样,可以执行包含警报警报的代码,而不会受到APC的干扰。

用户模式代码是否有类似的方式(暂时)禁用当前线程中的用户模式APC?


我很高兴为托管和非托管代码提供答案。我已经验证了以下方法不能正常工作:

  • 关键部分(EnterCriticalSection / LeaveCriticalSection
  • stdlib互斥锁(std::mutexstd::recursive_mutex,...)
  • 托管的同步功能(lock条语句,MethodImpl(MethodImplOptions.Synchronized)注释)

0 个答案:

没有答案