gpt4 book ai didi

ios - 理解 dispatch_sync

转载 作者:行者123 更新时间:2023-11-29 01:17:16 26 4
gpt4 key购买 nike

请考虑以下代码:

- (void)viewDidLoad {
[super viewDidLoad];

dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{


for (int i; i < 100 ; i++) {

NSLog(@"%i", i);

}

});

NSLog(@"Main thread code");

}

为什么它的唯一输出是 - 2016-01-26 16:15:28.842 Test[1051:35933] 主线程代码

我的意思是,全局队列中的代码永远不会执行,为什么?我只希望它同步执行。当然,我可以轻松编写 dispatch_async,但我只是好奇为什么上面的代码不起作用,不输出任何内容,除了 2016-01-26 16:15:28.842 Test[1051:35933] Main线程代码?

最佳答案

问题出在

for (int i; i < 100 ; i++) 

对于上面的代码值 i = 72339625,因此条件不满足并且不会进入循环

解决方案:初始化 i 的值,

for (int i = 0 ; i < 100 ; i++)

关于ios - 理解 dispatch_sync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35014707/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com