İçeriğe geç

Başıboş Task (ARCH9021)

Anahtar swift.async.fire-and-forget-task · Önem warning · Kategori async

Tutamacı atılan Task { } / Task.detached { } kullanımını işaretler. Task { @MainActor in ... } sıçraması muaftır: işin kendisi sıçramadır ve iptal edilecek bir şey yoktur.

func refresh() {
Task { try await repository.sync() }
}
func refresh() async throws {
try await repository.sync()
}
// or keep the handle: refreshTask = Task { ... } and cancel it in deinit

Çağıranı async yapın ya da beklenebilmesi veya iptal edilebilmesi için Task tutamacını saklayın.