【发布时间】:2018-04-11 07:43:35
【问题描述】:
我有外部 dll (C++) 和 c# 控制台应用程序,我在其中使用
导入此 dll[DllImport(DllFileName, CallingConvention = CallingConvention.Cdecl)]
此外部 dll 使用 kernel32.dll 休眠功能。是否有可能取消此睡眠功能或根本不允许启动它?我想象它是这样的
System.Threading.Thread.DoNotAllowSleep = true;
每当调用 Sleep 时,它只是跳过它而不中断其他代码。有没有可能实现我的需要?
【问题讨论】:
-
请注意,“取消”
Sleep(0)可能会破坏合理的程序。Sleep不仅会导致延迟,还会放弃时间片。您的.DoNotAllowSleep可能更好地描述为.BreakRandomPrograms。 -
听起来像XY Problem。你真正想要完成什么?为什么您认为您提出的解决方案将有助于实现这一目标?