gpt4 book ai didi

objective-c - 在特定时间运行 Mac 应用程序方法涉及哪些步骤?

转载 作者:行者123 更新时间:2023-12-03 17:03:31 25 4
gpt4 key购买 nike

我一直在研究 launchd 和 launchctl,但不明白前者是如何用于一次性任务的。

假设此应用程序的用户输入了将来要运行的任务的一些详细信息。 (他们可以在不同的时间添加几个。)如果使用启动,我假设应用程序将创建并保存一个 plist,然后加载它。 plist 的 ProgramArguments 可以包含任务的具体细节(可能会因将来的运行而改变)。该应用程序需要每次加载一个吗?应用程序是否需要清理(删除)已完成的 plist?

日历似乎是一种替代方案,但是使用“警报”>“打开程序”功能似乎存在问题。

还有其他选择吗? Cocoa 中可能内置了一些东西吗?

非常感谢所有想法。

最佳答案

似乎有多种方法可以完成这个“稍后再做”的任务。我的目标是使用 Objective-C 和 Cocoa 作为解决方案。最初,我担心以某种方式“阻塞”主线程。事实证明,NSTimer 是该问题的一个答案。我最终使用:

NSTimer *timer = [[NSTimer alloc] initWithFireDate:date
interval:0.1
target:self
selector:@selector(startSomeMethod:)
userInfo:info
repeats:NO];

稍后“触发”任务。

关于objective-c - 在特定时间运行 Mac 应用程序方法涉及哪些步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18407032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com