首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何查询我的MacOS/X应用程序是否处于app-nap模式?

如何查询我的MacOS/X应用程序是否处于app-nap模式?
EN

Stack Overflow用户
提问于 2018-09-27 07:47:14
回答 1查看 340关注 0票数 2

我有一个运行在MacOS (10.10和更新版本)上的C++应用程序(基于Qt),我希望它在运行于MacOS的app-nap mode下时稍微修改一下它的行为。(特别是,为了更新GUI中的状态指示器,它会执行一些周期性的网络查询,但如果应用程序正在休眠,我希望它在从休眠中唤醒之前停止执行这些查询)。

如果我有一个这样的函数:

代码语言:javascript
复制
 bool IsThisProcessNapping();  // returns true iff we're in app-nap mode

..。我想我可以实现我想要的行为,但我不知道有这样的函数。它是以其他名字存在的吗?

(请注意,我不想只禁用app-nap,因为我希望我的程序尽可能节能)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-27 09:33:26

我不确定你的问题是否有一个明确的答案(我不认为你所说的API确实存在)。

你可以从阅读Energy Efficiency Guide for Mac Apps开始,特别是“增强App Nap”一节:

给定您描述的场景(暂停网络请求以更新状态指示器),请查看Notify Your App When Visibility Changes

它提供了应用程序委托方法applicationDidChangeOcclusionState:windowDidChangeOcclusionState:的示例。

上面提到的指南还链接到类似的文档,用于检查应用程序的活动状态。

如果你的应用程序不可见,也不活跃,那么它就是app Nap的候选者。在这一点上,如果应用程序实际上还在打瞌睡,对您来说有什么不同?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52527477

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档