Wpis z mikrobloga

Mam problem z ConcurrentModificationException w #java. Nie mogę wkleić całego kodu, więc pytanie na przykładowym kodzie. Czy tutaj jest jakakolwiek opcja wystąpienie tego wyjątku na obiekcie 'map'? Bo wydaje mi się, że nie, ale mogę czegoś nie rozumieć. Rozumiem to tak, że żaden wątek nie wejdzie do żadnego z tych dwóch bloków synchronized, jeżeli któryś z nich jest w tym samym czasie wykonywany przez inny wątek.
  • 7
@elewarr: trochę zgłupiałem, bo sprawdziłem, że w timerze this.toString pokazuje, że jest klasy Test, ale z innym hashem. Zrobiłem taki kod, żeby to pokazać: [](https://pastebin.com/BW5LueFz)
Wynik:

Method: Test@1540e19d
Timer: Test$1@689751f
Timer + method: Test@1540e19d
Z tego co napisałeś zrozumiałem, że dla Timer (drugi wynik) powinna być klasa TimerTask, a jest Test i to jeszcze z innym hashem. Jak to możliwe jak istnieje jeden obiekt klasy Test?
@psi-nos: Twoje klasa dziedzicząca po TimerTask, to klasa anonimowa, jej nazwa to, jak sam podałeś 'Test$1' (zwróć uwagę na '$1'), nazwa klasy nadrzędnej to 'Test', to są różne instancje różnych klas, stąd oczywiście różne hashe.