Ich habe zwei Arrays, und ich muss den Zugriff auf sie über Threads synchronisieren. Ich werde sie in einen synchronisierten Block stellen. Das Problem ist, ich kann nur einen von ihnen auf "synchronisiert" gehen.Java synchronisierter Block für mehr als 1 Objekte?
Wie stelle ich sicher, dass der Zugriff auf beide Arrays synchronisiert ist? Gebe ich sie in eine Klasse und erstelle ein Objekt davon? Oder ich greife auf das andere Array nur im synchronisierten Block zu, und dies sorgt für den synchronisierten Zugriff darauf?
Danke,
Wenn Sie sie in eine neue Klasse einfügen, kann das helfen, zu klären, was Sie tun möchten, also würde ich das empfehlen. Das hat jedoch keinen Einfluss auf die Thread-Sicherheit. Ich mag die Antwort, die explizite Sperren verwendet (unten). –