iOS Broadcast
3.4K subscribers
1.81K photos
85 videos
1.02K links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
📚 ModelActor - это просто странно
Продолжаю внимательно смотреть с забора на использование SwiftData на проде. Если в pet-проектах всегда все хорошо, то на проде совсем не так. ModelActor вызывает много вопросов и проблем. Он защищает контекст модели, но не является потокобезопасным. ModelActor использует пользовательский actor executor, что необходимо для совместимости с Core Data.

Странное поведение ModelActor
🔴ModelActor может выполнять код в основном потоке, что не соответствует ожиданиям.
🔴ModelActor не имеет явного доступа к основному потоку, что делает его использование сложным.

Контекст создания ModelActor
🔴Модель Actor зависит от контекста создания.
🔴Создание в основном потоке приводит к использованию основного потока для изоляции.
🔴Создание в фоновом режиме приводит к обычному поведению.

Фоновый доступ к ModelActor
🔴Для фонового доступа к ModelActor необходимо использовать неизолированную асинхронную функцию.
🔴Модель Actor не является Sendable, что требует переноса работы в actor.

Все детали того как можно обойти эти проблемы детально рассмотрены в статье.
#SwiftData
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1