Junior — Middle
Welche Anweisungen sind bei der Verwendung von MainActor zu befolgen?
sobes.tech KI
Antwort von AI
@MainActor in Swift wird verwendet, um anzugeben, dass der Code im Hauptthread ausgeführt werden soll, was wichtig ist für die Aktualisierung der Benutzeroberfläche und andere Operationen, die den Hauptthread erfordern. Wichtige Hinweise bei der Verwendung von MainActor:
- Annotieren Sie Klassen, Strukturen, Funktionen oder Eigenschaften mit
@MainActor, um die Ausführung im Hauptthread zu gewährleisten. - Für asynchrone Funktionen können Sie
@MainActorzusammen mitasyncverwenden. - Wenn Sie eine mit
@MainActorgekennzeichnete Funktion aus einem anderen Thread aufrufen, verwenden Sieawait, um zum Hauptthread zu wechseln.
Beispiel:
@MainActor
class ViewModel {
var title: String = ""
func updateTitle() {
title = "Aktualisiert"
}
}
func someBackgroundTask() async {
let vm = ViewModel()
await vm.updateTitle() // Wechsel zum Hauptthread
}
Auf diese Weise hilft @MainActor, Fehler im Zusammenhang mit UI-Updates von einem Nicht-Hauptthread zu vermeiden.