我有一个后台脚本,它使用setInterval命令来定期执行网络请求。
我想知道后台脚本是否可以检测操作系统是处于睡眠还是待机状态,以便我可以调整恢复后台脚本时显示的计时器。据我所知,setInterval计时器在睡眠期间根据此答案What happens to setTimeout when the computer goes to sleep?
暂停代码示例是background.js
set_start_time();
search_set_int = setInterval(function() {
foo();
// Set the Auto Search Start time for the next run
set_start_time();
}, frequency); // Set interval function
var total_time_left_sec = (frequency/1000) - (current_time_unix - start_time_unix)
由于
答案 0 :(得分:1)
保留一个局部变量,其中包含最后一个间隔运行的时间戳。 在正常(无睡眠)执行时,时间戳将是大约现在的时间段,但是在睡眠时它会更老,所以你知道你来自睡眠。 也不要将间隔作为计算经过时间的“滴答” 而是记住从now()
开始的时间戳和减法