Daniel Marino
8 novembre 2024
Correction de l'erreur d'isolation de l'acteur principal d'initialisation UIView personnalisée dans Swift 6

Les développeurs peuvent constater un problème inattendu d'isolation des acteurs principaux dans leurs sous-classes UIView lors de la mise à jour vers Swift 6, en particulier lors de l'initialisation avec awakeFromNib(). L'appel de méthodes isolées par les acteurs principaux, telles que addContentView(), dans un contexte synchrone et non isolé entraîne fréquemment ce problème. Les nouvelles restrictions de concurrence dans Swift 6 visent à augmenter les performances et la sécurité, mais elles nécessitent également des modifications des procédures de longue date. Cet article explique comment résoudre ces problèmes et activer une configuration sûre et efficace de l'interface utilisateur sur le thread principal à l'aide d'utilitaires tels que MainActor.assumeIsolated et Task.