W moim zgłoszeniu istnieje więcej niż jeden proces, aw każdym procesie potrzebuję dostępu do tej samej bazy danych SQLite (oczywiście, to znaczy więcej niż 2 theads), więc martwiłem się nie tylko o bezpieczeństwie wątków dotyczących SQLite, ale także o bezpieczeństwie procesu.Informacje o bezpieczeństwie Android Sqlite w przypadku wielu procesów
Jednym z rozwiązań dla tego przypadku jest using content-provider. Ale od Androida sdk, it warns that its methods may be called from multiple threads and therefore must be thread-safe. Jeśli dostawca treści nie musi koniecznie oznaczać wątku, jak mogę założyć, że jest bezpieczny dla procesu?
Ponadto, article wyjaśnia, że sama SQLiteDatabase jest zsynchronizowana, co gwarantuje, że żadne dwa wątki nie dotkną jej w tym samym czasie. Co jeśli w przypadku wieloprocesowym? Czy dwa procesy mogą modyfikować tę samą tabelę w tym samym czasie? Czy to się zawiesi? Nie dostaję żadnej odpowiedzi po uruchomieniu google ...
Nie, nie mogą. dostaniesz SQLiteDatabaseLockedException – orium