S
SwifyWay
@swifyway402 подп.
1.1Kпросмотров
24 июля 2025 г.
questionScore: 1.2K
🤖 Что такое актор? Актор — это reference type. Он нужен для защиты от data races. 🔐 Изоляция и доступ • Внутренние свойства и методы актора изолированы от прямого доступа извне. Любой доступ требует использования ключевого слова await, что обозначает потенциальную точку останова. • Исключения составляют non-isolated свойства или методы, которые не изменяют состояние и могут вызываться синхронно, без await . 🎯 Серийный исполнитель (Serial Executor) • У акторов присутствует внутренняя очередь‑исполнитель, которая последовательно обрабатывает задачи, что обеспечивает потокобезопасность. • При этом порядок выполнения может отличаться от FIFO и использовать приоритеты. 📏 Основные правила взаимодействия с акторами • Доступ к изменяемым свойствам должен быть асинхронным и сопровождаться await. • Использование non-isolated разрешается только для неизменяемых (let) или не влияющих на состояние методов. 🚀 Преимущества • Намного проще в управлении по сравнению с DispatchQueue, Operation или lock’ами. • Повышают потокобезопасность вашего кода. Пример • В статье приведён пример актора Account с let accountNumber, доступное синхронно (non-isolated), и изменяемым balance, доступным только через await в async‑методах. 🔗 Читать статью на Medium
1.1K
просмотров
1269
символов
Да
эмодзи
Нет
медиа

Другие посты @swifyway

Все посты канала →
🤖 Что такое актор? Актор — это reference type. Он нужен для — @swifyway | PostSniper