使用构建框架中的dispatch_async

时间:2012-12-11 16:39:21

标签: iphone ios multithreading queue dispatch-async

我正面临dispatch_async

的奇怪问题

我有两个独立的项目:一个用于构建框架,另一个用于将框架用于某些目的。

我正在尝试执行非常简单的代码(甚至没有任何其他代码):

dispatch_async( dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

    dispatch_async(dispatch_get_main_queue(), ^{

    });
}); 

所以,如果我把这个dispatch_async放到我的项目中,那就完美了 但是如果把它放到我的框架项目的某个方法并构建它,然后从使用该框架的项目调用该方法,那么我在第一个{{1}时收到EXC_BAD_ACCESS错误dispatch_async堆栈上的行

虽然此objc_retainAutoreleasedReturnValue仅适用于dispatch_async队列

我尝试创建具有不同优先级的不同队列,我尝试了静态队列,
它们实际上已创建,但dispatch_get_main_queue()每次都崩溃

我认为这是与我的框架项目中的构建设置中的某些标志相关的问题,但遗憾的是我找不到任何可以帮助的内容

更新:
我忘了说,这完全适用于模拟器,但在设备上不起作用

以下是我的代码示例:

dispatch_async

SingleTonOfFramework - 是我框架中的一个类 这就是它的作用:

[[SingleTonOfFramework sharedInstance] executeRequest:@"SomeRequest"
                                              success:^(id response) {
                                                  NSLog(@"works");
                                              }];

0 个答案:

没有答案