仅在系统唤醒时触发计时器 (macOS)
Fire timer only when system is awake (macOS)
我正在开发一个可以进行网络调用的 mac 应用程序。我正在使用 Timer
每 15 分钟进行一次网络调用以刷新一些数据。我只希望定时器在用户使用系统时触发并进行调用(否则它只是在进行不必要的调用),也就是系统未处于睡眠状态时。我该怎么做?我读到 mach 有一个单调时钟,它只在系统唤醒时更新,但我不确定如何实现我的计时器以按预期运行。有没有办法确定系统是否唤醒?在此先感谢您的帮助。
NSWorkspace 中有 4 个通知可以用来暂停和恢复计时器
didWakeNotification
机器从睡眠中唤醒时发布。
willSleepNotification
机器进入休眠前发布。
screensDidSleepNotification
机器屏幕进入睡眠状态时发布。
screensDidWakeNotification
机器屏幕唤醒时发布。
我正在开发一个可以进行网络调用的 mac 应用程序。我正在使用 Timer
每 15 分钟进行一次网络调用以刷新一些数据。我只希望定时器在用户使用系统时触发并进行调用(否则它只是在进行不必要的调用),也就是系统未处于睡眠状态时。我该怎么做?我读到 mach 有一个单调时钟,它只在系统唤醒时更新,但我不确定如何实现我的计时器以按预期运行。有没有办法确定系统是否唤醒?在此先感谢您的帮助。
NSWorkspace 中有 4 个通知可以用来暂停和恢复计时器
didWakeNotification
机器从睡眠中唤醒时发布。willSleepNotification
机器进入休眠前发布。screensDidSleepNotification
机器屏幕进入睡眠状态时发布。screensDidWakeNotification
机器屏幕唤醒时发布。