Nahlédnutím do javadocu na
http://java.sun.com/javase/6/docs/api/java/util/Timer.html
jsem se dočetl, že

By default, the task execution thread does not run as a daemon thread,
so it is capable of keeping an application from terminating.

čili řešením je použít správný konstruktor a nastavit Timeru, aby
používal daemon thread, tj.

Timer timer = new Timer(true);

Makub

Dusan Zatkovsky napsal(a):
> MyClasSlave::flush()
> 
> ... a main samozrejme neskonci a apkilacia zostane vysiet.
> 
> 
> V C++, alebo inom jazyku nepostradajucom destruktory, by som vyrobil nieco 
> ako:
> 
> void MyClassSlave::~MyClassSlave() {
>       this.timer.cancel();
> }
> 
> ... a bolo by po probleme. Ako ale pre boha vyriesim tento problem v Jave bez 
> toho, aby som z main() hierarchicky volal nejaku nahrazku destruktoru, 
> povedzme stop()?
> 
> Diky za nakop.
> 
> 


-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [email protected]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem