我在Swift中创建GCD队列时遇到了崩溃,有什么想法吗?
var q: dispatch_queue_t?
q = dispatch_queue_create("com.kukodajanos.queryPlaces", 0)
答案 0 :(得分:6)
通过alt +点击查看文档评论,您可以看到:
在attr中你可以传递3件事:nil, DISPATCH_QUEUE_SERIAL and DISPATCH_QUEUE_CONCURRENT
而不是Int。
答案 1 :(得分:5)
传递nil而不是0:
var q: dispatch_queue_t?
q = dispatch_queue_create("com.kukodajanos.queryPlaces", nil)
答案 2 :(得分:1)
据我所知,第二个参数是引用而不是整数,所以你应该传递nil
而不是0
。
您是否有任何理由将变量声明为可选项?如果您打算在下一行分配,那么最好将其设为非可选项。另外,我猜你在其生命周期中不会改变它,所以最好让它变得不可变:
let q = dispatch_queue_create("com.kukodajanos.queryPlaces", nil)
答案 3 :(得分:0)
传递nil而不是0作为dispatch_queue_attr_t shoild做的伎俩。此外,该函数返回一个隐式解包的可选项,而不是一个可选的,是故意的吗?