Являются ли CRUD методы ROOM потокобезопасными?

Рейтинг: 0Ответов: 1Опубликовано: 07.08.2025

Предположим что несколько потоков одновременно пытаются создать/модифицировать запись в базе или использовать другие CRUD методы ROOM. Нужно ли самостоятельно обеспечить потокобезопасность этих методов с помощью synchronized или например однопоточного экзекутора или ROOM позаботится об этом сама? Как правильно использовать ROOM в многопоточной среде?

Ответы

▲ 1

Да, должны. Это обертка вокруг SQLLite.

Есть одно "но": согласно https://developer.android.com/training/data-storage/room/async-queries запросы нельзя делать из главного потока - чтобы не происходило блокировки интерфейса.