在Windows上,通常的做法是创建一个命名的互斥锁,并使用它来确定给定应用程序的实例是否已在运行.这有其缺点,但大多数都有效.
我可以想一想在Mac上做到这一点的方法:
Cocoa/Carbon内置的东西比上面的选项更容易吗?如果没有,那三个中哪一个最常用于mac?我假设2或3 ......
详细说明使用NSWorkspace.尝试在NSWorkspace中使用launchApplications.这将返回一个NSArray,其中包含每个已启动应用程序的字典.您可以遍历数组以查看您要查找的应用程序是否已在运行.我会建议您使用的关键NSApplicationBundleIdentifier值具有像"com.mycompany.myapp"而不是找名称的值.如果您需要查找应用程序的软件包标识符,可以查看应用程序包中的info.plist文件.
Mac没有与Windows一样的实例.一般来说,您希望应用程序运行两次,您需要复制二进制文件,然后双击复制的版本.
如果您需要运行两个应用程序实例,那么您不会像Mac用户那样思考:).
编辑:这在技术上并非如此.检查评论.
归档时间: |
|
查看次数: |
6232 次 |
最近记录: |