Написал код для изучения синхронной работы потоков(в этом случае не совсем синхронной, но не суть). Класс, в котором реализуются синх. методы:
class Element{
int element;
Element(int n){
element = n;
}
synchronized int adding(){
element+=1;
return element;
}
synchronized int subtraction(){
element-=1;
return element;
}
}
Работа первого потока:
public void run(){
while (true){
System.out.println(element.adding());
}
}
Работа второго потока:
public void run(){
while (true){
System.out.println(element.subtraction());
}
}
До некоторого момента вывод был понятен - целые числа с разницей в 1, пока там не появилось:
...
-474
-473
-472
-553
-472
-473
...
Что это? upd. чисел с такой разницей достаточно