我正在使用这段代码:
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
dispatch_async(queue, ^{
//saving stuff to NSUserDefaults
});
只要代码没有被快速连续调用两次,它就可以工作,此时我会崩溃。它所说的只是Thread 7: trace
崩溃,在一个屏幕上CFRetain
。
我猜我的队列不应该允许重启这个例程,除非它已经完成。但我不确定要更改的众多参数中的哪一个。我不需要它是高优先级,我也不确定它需要是全局队列,老实说线程编程需要一些时间让我确定这一切,所以我希望有人能指出我正确的方向。