Dee*_*pak 1 cocoa-touch objective-c grand-central-dispatch
我想一次启动多个线程,所以我使用了以下代码.
我很困惑我是否应该创建一个队列并在其中放入许多操作,或者通过单个操作创建多个队列.
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0);
for(int INDEX = 0; INDEX < 5; INDEX++) {
dispatch_async(queue, ^{
/*some code*/
});
}
Run Code Online (Sandbox Code Playgroud)
for(int INDEX = 0; INDEX < 5; INDEX++) {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
/*some code*/
});
}
Run Code Online (Sandbox Code Playgroud)
哪个是最佳的?另外,GCD中的线程数是否有限制?
你没有多个队列.您正在检索其中一个全局队列.您的应用程序中有三个,它们既不能被创建也不能被您销毁.
此外,即使您正在创建队列(使用dispatch_queue_create()),您也不一定要为每个队列或任何新线程创建新线程.Grand Central Dispatch系统为您管理所有线程.GCD不限制您可以创建的队列数.
| 归档时间: |
|
| 查看次数: |
720 次 |
| 最近记录: |