Swift Concurrency by Example 第4页
How to create a task group and add tasks to it 如何创建任务组并向其添加任务-Stewed Noodles 资源

How to create a task group and add tasks to it 如何创建任务组并向其添加任务

Swift’s task groups are collections of tasks that work together to produce a single result. Each task inside the group must return the same kind of data, but if you use enum assoc...
How to run tasks using SwiftUI’s task() modifier 如何使用 SwiftUI 的 task() 修饰符运行任务-Stewed Noodles 资源

How to run tasks using SwiftUI’s task() modifier 如何使用 SwiftUI 的 task() 修饰符运行任务

SwiftUI provides a task() modifier that starts a new task as soon as a view appears, and automatically cancels the task when the view disappears. This is sort of the equi...
How to create and call an async function如何创建和调用异步函数-Stewed Noodles 资源

How to create and call an async function如何创建和调用异步函数

Using async functions in Swift is done in two steps: declaring the function itself as being async, then calling that function using await.在 Swift 中使用异步函数分两步完...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
0270
What’s the difference between actors, classes, and structs? Actors、Classes和 Structs 之间有什么区别?-Stewed Noodles 资源

What’s the difference between actors, classes, and structs? Actors、Classes和 Structs 之间有什么区别?

Swift provides four concrete nominal types for defining custom objects: actors, classes, structs, and enums. Each of these works a little differently from the others, but the first...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
270
How to create continuations that can throw errors 如何创建可以抛出错误的continuations-Stewed Noodles 资源

How to create continuations that can throw errors 如何创建可以抛出错误的continuations

Swift provides withCheckedContinuation() and withUnsafeContinuation() to let us create continuations that can’t throw errors, but if the API you’re using ...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
260
What’s the difference between await and async let? await 和 async let 有什么区别?-Stewed Noodles 资源

What’s the difference between await and async let? await 和 async let 有什么区别?

Swift lets us perform async operations using both await and async let, but although they both run some async code they don’t quite run the same: await wai...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
0260
How to make async command-line tools and scripts 如何制作异步命令行工具和脚本-Stewed Noodles 资源

How to make async command-line tools and scripts 如何制作异步命令行工具和脚本

If you’re writing a command-line tool with Swift, you can use async code in two ways: if you're using main.swift you can immediately make and use async functions as norm...
How to force concurrent tests to run on a specific actor 如何强制并发测试在特定actor上运行-Stewed Noodles 资源

How to force concurrent tests to run on a specific actor 如何强制并发测试在特定actor上运行

Swift Testing and XCTest behave differently when it comes to running tests in parallel: unless you say otherwise, Swift Testing will run both synchronous and asynchronous tests on ...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
260
How to set a time limit for concurrent tests 如何为并发测试设置时间限制-Stewed Noodles 资源

How to set a time limit for concurrent tests 如何为并发测试设置时间限制

Both Swift Testing and XCTest have simple mechanisms for controlling how long tests should be allowed to run before being considered a failure. This is critically important for con...
XuX的头像-Stewed Noodles 资源烩之面大会员XuX1年前
260
How to create and use task local values 如何创建和使用任务本地值-Stewed Noodles 资源

How to create and use task local values 如何创建和使用任务本地值

Swift lets us attach metadata to a task using task-local values, which are small pieces of information that any code inside a task can read.Swift 允许我们使用 task-local ...