首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用新的Swift结构化并发启动后台任务?

如何使用新的Swift结构化并发启动后台任务?
EN

Stack Overflow用户
提问于 2021-10-14 14:24:00
回答 1查看 1.1K关注 0票数 2

我在用斯威夫特写个测试。我正在测试的函数阻止当前线程,所以我想在后台运行它。以前,我会用DispatchQueue.global.async {}包装它。

使用Swift的新的结构化并发,我找到了Task.detached。然而,上面的笔记上写着

通常,应该避免创建分离的任务,以利于使用async函数、async let声明和await表达式。

在没有async标志的情况下,苹果推荐的另一种方式可以异步启动吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-14 15:50:06

文档只是告诉您,在许多情况下,应该首选结构化并发,但是在需要非结构化并发的地方,可以随意使用它。

已经说过了,与其创建一个分离的任务,还可以启动一个非结构化的任务。见Swift编程语言:并发性:非结构化任务。简而言之,与使用Task.detached { … }创建一个分离的任务相比,您可以只使用Task { … }

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69572419

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档