Tun*_*her 33 ios dispatch-async
这段代码意味着什么?
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
TMBaseParser *parser=[[TMBaseParser alloc] init];
parser.delegate=self;
NSString *post =nil;
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding];
[parser parseForServiceType:TMServiceCategories postdata:postData];
});
Run Code Online (Sandbox Code Playgroud)
请简要解释一下.谢谢
Mar*_*tel 101
中的一段代码
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
});
Run Code Online (Sandbox Code Playgroud)
在后台线程上异步运行.这样做是因为解析数据可能是一项耗时的任务,它可以阻止主线程停止所有动画,并且应用程序不会响应.
如果您想了解更多信息,请阅读Apple在Grand Central Dispatch上的文档
如果上面的代码片段不起作用,那么试试这个:
Objective-C的:
dispatch_async(dispatch_get_main_queue(), ^{
});
Run Code Online (Sandbox Code Playgroud)
应始终从主队列执行UI更新."^"符号表示块的开始.
斯威夫特3:
DispatchQueue.global(qos: .background).async {
print("This is run on the background queue")
DispatchQueue.main.async {
print("This is run on the main queue, after the previous code in outer block")
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
65991 次 |
| 最近记录: |