Junior — Middle
Jaké pokyny je třeba dodržovat při používání MainActor?
sobes.tech AI
Odpověď od AI
@MainActor ve Swiftu se používá k označení, že kód by měl být vykonáván na hlavním vlákně, což je důležité pro aktualizaci UI a další operace vyžadující hlavní vlákno. Hlavní pokyny při používání MainActor:
- Označte třídy, struktury, funkce nebo vlastnosti pomocí
@MainActor, aby bylo zajištěno provádění na hlavním vlákně. - Pro asynchronní funkce můžete použít
@MainActorspolu sasync. - Pokud voláte funkci označenou
@MainActorz jiného vlákna, použijteawaitpro přepnutí na hlavní vlákno.
Příklad:
@MainActor
class ViewModel {
var title: String = ""
func updateTitle() {
title = "Aktualizováno"
}
}
func someBackgroundTask() async {
let vm = ViewModel()
await vm.updateTitle() // přepnutí na hlavní vlákno
}
Tímto způsobem @MainActor pomáhá předcházet chybám souvisejícím s aktualizací UI z jiného vlákna než hlavního.