Использование @MainActor в ObservableObject выдает предупреждение о публикации изменений из фонового потока.IOS

Программируем под IOS
Anonymous
Использование @MainActor в ObservableObject выдает предупреждение о публикации изменений из фонового потока.

Сообщение Anonymous »

При работе над простым приложением, чтобы узнать больше о SwiftUI, я получаю предупреждение во время выполнения.

Публикация изменений из фоновых потоков не разрешена; обязательно публикуйте значения из основного потока (с помощью таких операторов, как получение(on:)) при обновлении модели.

Предупреждение появляется при опубликованном значении ObservableObject. Я понимаю, что пытаюсь изменить опубликованное значение из фонового потока, значение меняется в зависимости от ответа на веб-запрос. Судя по тому, что я смог найти, проблему следует решить, добавив @MainActor в ObservableObject или указав обновление, которое должно быть выполнено в основном потоке, с помощью DispatchQueue.main.async { , но оба варианта, похоже, не работают.

Код: Выделить всё

@MainActor
class AuthStore: ObservableObject {
var authState: OIDAuthState?

@Published var isAuthenticated = false // 

Подробнее здесь: [url]https://stackoverflow.com/questions/78753817/using-mainactor-on-observableobject-gives-warning-about-publishing-changes-from[/url]

Вернуться в «IOS»