0
비슷한 질문이 있지만 여러 스레드에서 sqlite db 사용에 대한 명확한 대답을하지 않습니다. (즉 DB)복수 스레드에서 sqlite 액세스
class MainActivity extends Activity {
DbHelper db; //extends sqliteopenhelper
...
void M1() {
db.getReadableDatabase();
Cursor c = db.query("...."
...
db.close();
}
void M1() {
db.getReadableDatabase();
Cursor c = db.query("...."
...
db.close();
}
확인이 멀티 스레드가 아니라 질문
- 그것이 sqliteopenhelper 인스턴스의 같은 인스턴스를 사용하는 것이 문제가 될 않는 것입니다 : 다음과 같은 시나리오를 생각해보십시오 위에서와 같이 여러 가지 방법으로 여러 번 열거 나 닫을 수 있습니까?
그리고 내 시나리오는 다음myAsync extends AsyncTask doInBackground(.. {
do something using M1(); //this is a background thread }} onResume()...{ myAsync.execute(); M2(); //this is the main thread ... } 는 비동기 시나리오에서, 아마 동시에 같은 데이터베이스에 액세스 할 수있는 두 가지 방법으로 볼 경우 (방법 작성에 대한 전용 - 읽기 위해?). 그러나 그들은 SqliteOpenHelper의 동일한 인스턴스를 사용하고 있습니다. 그것이 충돌을 야기시킬 수 있습니까? 그렇다면 이것을 피하는 방법은 무엇입니까?
나는 sqlite 데이터베이스와 동시성에 대해 더 알고 싶다.
어떤 아이디어라도 감사할만한 아이디어가있다.
"동기화"에 대해 언급 해 주셔서 감사 드리며, 일부는 읽는 경우 제한이없고 충돌이 없다고 말합니다. 그게 사실이야? 그리고 나는 또한 동기화에 대해 배우고 싶지만 그 주위에는 아무 것도 유용하지 않습니다. 어떤 링크, 블로그, 출처를 추천 해 주시겠습니까? 나는 이미 android dev을 검색했다. –
확실한 정보가 있으면 자세히 알려주세요. –