スレッド 1 に次のコードがあります。
synchronized (queues.get(currentQueue)) { //line 1
queues.get(currentQueue).add(networkEvent); //line 2
}
およびスレッド2の以下:
synchronized (queues.get(currentQueue)) {
if (queues.get(currentQueue).size() > 10) {
currentQueue = 1;
}
}
ここで私の質問に: currentQueue 変数の値は現在 0 です。スレッド 2 が currentQueue の値を 1 に変更し、スレッド 1 が行 1 で待機する場合 (同期のため)、スレッド 1 は更新された currentQueue 値を行で使用しますか? 2 スレッド 2 が終了した後 (それが私がしたいことです)。