1 个不稳定版本

0.0.1 2021 年 1 月 14 日

#19 in #prevent

每月 34 次下载

MIT 许可证

6KB
70 行代码(不含注释)

防止 macOS AppNap

在 macOS 上,AppNap 是一种通过在用户未与应用程序交互时挂起应用程序来降低应用程序能耗的机制。

具体示例,当运行带有一些在 计时器事件 附近的调试输出的 druid 计时器示例 时,你会发现如果应用程序窗口在后台并且完全不可见/被其他窗口覆盖,输出会在大约一分钟之后显著变慢。

为了防止这种情况,例如,如果你在后台进行处理并依赖于计时器,你可以使用这个crate。目前它只支持完全禁用应用程序的 App Nap。更细粒度的控制可能可行且具有吸引力,未来可能会添加(欢迎提交拉取请求!)。

用法

目前相当简单

fn main() {
    macos_app_nap::prevent();
}

潜在改进

  • C 辅助函数可以用 audio_thread_priority crate 替换,该 crate 似乎正在做类似的事情。

许可证

MIT。有关详细信息,请参阅 LICENSE.md。

依赖项

~465–760KB
~16K SLoC