Finally I came to this solution: I created List<MyRecursive> list = new ArrayList<>();
object in MainRecursionClass
and added every MyRecursive
instance, created recursively, in the list
. The class MyRecursive
has new method:
public synchronized void resume() {
notify();
}
When, the method MainRecursionClass.resume()
, which wakes up the threads, looks like this:
public void resume() {
System.out.println("Resumed");
pause = false;
for(MyRecursive mr : list) {
if(mr != null)
mr.resume();
}
}
}