在Swift 2.2中,我们有如下函数用于打印带有当前运行线程的日志消息:
func MyLog(_ message: String) {
if Thread.isMainThread {
print("[MyLog]", message)
} else {
let queuename = String(UTF8String: dispatch_queue_get_label(DISPATCH_CURRENT_QUEUE_LABEL))! // Error: Cannot convert value of type '()' to expected argument type 'DispatchQueue?'
print("[MyLog] [\(queuename)]", message)
}
}
这些代码在Swift 3.0中无法编译。现在我们如何获取队列名称?
DispatchQueue
有label
属性。 - eonil