データベース クエリのラッパーを作成し、別のスレッドからアクセスする必要があります。したがって、私のアプリケーションはそのヘルパー クラスのインスタンスを 1 つだけ作成し、getter を介して返します。
DbConnection dbc = app.getDatabaseConnection();
synchronized (dbc) {
dbc.doSomething();
}
このコードは安全ですか? ここで述べたように、ローカル変数で同期しても機能するはずです。オブジェクトインスタンスが同じであることが保証されている限り、これは正しいですか?
影響を受ける DbConnection のすべてのインスタンス メソッドを同期させる方が良い方法ですか?