Isolate – это независимая рабочая единица в Flutter, похожая на поток, но с важным отличием: у каждого Isolate собственный участок памяти, что предотвращает проблемы с гонкой данных (data race).
Ключевые моменты:
- Работают параллельно.
- Не делят память напрямую.
- Общаются через порты (SendPort и ReceivePort), отправляя и получая сообщения.
- Основной Isolate (UI Isolate) отвечает за отрисовку UI и обработку событий.
- Новые Isolate создаются для выполнения ресурсоемких задач, не блокируя UI.
Пример использования:
dart