0
複数のスレッドからsqlite 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();
}
OK]をクリックして、これはマルチスレッドではなく、質問は
- はそれが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データベースと並行性の詳細について学びたいと思います
アイデアをいただければ幸いです。
"同期"について言及していただきありがとうございます、いくつかは、私は読書を行う場合は、制限と衝突がないと言う。本当?また、同期についても学びたいと思っていますが、そこでは役に立たないものはありません。リンク、ブログ、ソースをお勧めしますか?私はすでにアンドロイドデベロッパーを探しました。 –
確かに、私は詳細情報を得る場合は間違いなく –