【发布时间】:2016-07-05 14:35:44
【问题描述】:
考虑以下示例:
setInterval(function()
{
console.log(new Date());
});
如果我在 OS X 下使用electron example.js 运行它,它会在我的停靠栏中打开一个图标并开始在控制台上打印出时间。但是,如果应用没有集中注意力,过一会儿它就会开始节流。
我环顾四周,发现这是由于 OS X 的省电策略。现在,如果我需要它继续在后台工作怎么办?我的应用程序将是一个守护进程,时不时地做一些事情,我不能让我的用户长时间盯着我的应用程序。
我发现here我可以做到
electron.powerSaveBlocker.start('prevent-app-suspension');
这实际上解决了我的问题。然而,这是相当具有侵入性的,因为据我所知,它完全可以防止系统进入睡眠状态!我不需要这么多,我只需要我的应用程序在计算机处于活动状态且在线时执行某些操作,而不会强迫它永远保持清醒。
在让我的用户持续将应用程序保持在前台和让他们的计算机永远不睡眠之间,中间没有什么吗?
【问题讨论】:
-
我正忙着想弄清楚我的应用程序发生了什么。非常感谢您提出这个问题!
标签: electron throttling power-saving