Witam
Mam listę klas implementujących interfejs Callable. W klasie tej wywoływane są metody których czas wykonania jest spory.
Czasami jest potrzeba przerwania wszystkich wykonywanych metod call().
I teraz pytanie:
jeżeli na każdym obiekcie Future wykonam cancel(true) to call() nie przerywa swojej pracy tylko dalej wywołuje po kolei metody...wiem, ze w sumie cancel nie do tego służy.
Ale jak w klasach implementujacych interfejs Callable stworzyłem metodę w której wołana jest metoda Thread.currentThread.interrupt. i to też nie zatrzymało funkcji call() to co może zatrzymać?
Na razie przed wykonaniem metody sprawdzam czy flaga przerwij jest na true ale to lamerskie mi isę wydaje.
Pozdrawiam