首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSAppleScript与线程安全

NSAppleScript与线程安全
EN

Stack Overflow用户
提问于 2011-02-13 08:46:46
回答 1查看 769关注 0票数 1

我的应用程序需要在后台线程AppleScripts上定期调用预编译的。因为NSAppleScript不是线程安全的,所以我需要在主线程上执行脚本。我需要在执行脚本后获得返回值,所以我使用以下解决方案:

代码语言:javascript
复制
- (void) executeAppleScript:(NSMutableDictionary*) myDict
{
    NSString* returnValue = [[script executeAndReturnError:nil] stringValue];
    [myDict setValue:returnValue forKey:@"myKey"];

}

NSMutableDictionary* myDict = [NSMutableDictionary dictionary];
script = [[NSAppleScript alloc] initWithContentsOfURL:scriptURL error:nil];
[self performSelectorOnMainThread:@selector(executeAppleScript:) withObject:myDict waitUntilDone:YES];

script是一个实例变量。我的问题是,我在后台线程上分配script,并在主线程上执行它。NSAppleScripts线程的分配安全吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-13 08:54:21

这是:

,因为NSAppleScript不是线程安全的,所以我需要在主线程上执行脚本。

回答如下:

是否分配NSAppleScripts线程安全?

不,这不安全。特别是,实例的初始化可以执行许多不是线程安全的事情。

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

https://stackoverflow.com/questions/4983262

复制
相关文章

相似问题

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