swift 抛出函数会阻塞主线程吗?
do swift throwing functions block main thread?
在 swift 如果从主线程调用长 运行 抛出函数,我会阻塞我的 UI 吗?还是抛出函数会自动异步发生?只是想知道我是否应该将它从主线程中分派出来,或者这是否是多余的。
该函数将 运行 在您调用它的任何队列上。如果它像你说的那样是一个很长的 运行ning 函数,我建议你在后台队列中关闭它,这样你就不会冒险占用你的主队列。
如果您想了解更多背景信息(双关语),请查看 Objc.IO 文章 Concurrency APIs on OS X and iOS
此图来自文章,对于可视化队列非常有用。
在 swift 如果从主线程调用长 运行 抛出函数,我会阻塞我的 UI 吗?还是抛出函数会自动异步发生?只是想知道我是否应该将它从主线程中分派出来,或者这是否是多余的。
该函数将 运行 在您调用它的任何队列上。如果它像你说的那样是一个很长的 运行ning 函数,我建议你在后台队列中关闭它,这样你就不会冒险占用你的主队列。
如果您想了解更多背景信息(双关语),请查看 Objc.IO 文章 Concurrency APIs on OS X and iOS
此图来自文章,对于可视化队列非常有用。