Ios 为什么这个线程不';不执行最后一行代码
我创建了一个线程。我发现这个线程不执行最后一行代码Ios 为什么这个线程不';不执行最后一行代码,ios,nsrunloop,Ios,Nsrunloop,我创建了一个线程。我发现这个线程不执行最后一行代码 let thread = Thread { RunLoop.current.add(NSMachPort(), forMode: RunLoopMode.commonModes) let runloop = CFRunLoopGetCurrent() print("A") CFRunLoopRun() print("B") } 然后我调用这个线程“thread.start()”。但是它只能打印“A”。C
let thread = Thread {
RunLoop.current.add(NSMachPort(), forMode: RunLoopMode.commonModes)
let runloop = CFRunLoopGetCurrent()
print("A")
CFRunLoopRun()
print("B")
}
然后我调用这个线程“thread.start()”。但是它只能打印“A”。CFRunLoop()
是一个无限期运行的函数,直到停止为止。
这意味着上述代码基本上是:
print("A")
while true {
// execute run loop
}
print("B")
在停止运行循环之前,无法调用最后一行