Использование @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]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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