开始时,我构建了一个桌面应用程序( .NET Framework中的WPF)和引擎( .NET Framework中的类库)。后来,我尝试在Xamarin.Forms/Xamarin.Android.中为引擎项目构建前端。当我刚刚添加了对Xamarin项目的引用时,我很惊讶,而且一切都很好。
当我运行我的android应用程序并阻止使用power按钮应用程序的设备开始工作2-3倍时,问题就出现了。即使是Task.Delay(1000)也需要1500到3000 ms才能执行。我在引擎项目中有内部计时器,这个问题导致了引擎内部实时和时间之间的时间差异。
引擎项目是多线程项目.它在工作期间创建和销毁许多线程。
我试过的是:
使用WakeLock.Partial.
当设备连接到电源时,应用程序可以很好地工作在阻塞设备上。
Android版本: 10
是否有可能让android设备的CPU全速运行?当设备被阻塞时,如何保持正常的代码执行速度?
发布于 2019-12-26 14:43:30
我找到了解决方案--前台服务中的WakeLock。仅靠前台服务是不够的。
通过这种组合,当设备被锁定而没有连接到任何电源时,引擎以正常速度工作。
https://stackoverflow.com/questions/59482528
复制相似问题