# Funktion alle 5 minuten ausführen



## olli-h (4. Mai 2009)

Hallo Forum,

ich habe folgendes Problem :

Ich möchte gerne eine Applikation schreiben, welche z.B. alle 5 Minuten sich auf einen Server connected und eine Datei ausließt.
Das Problem sind die 5 Minuten zu warten.
Wenn ich mit Thread.sleep arbeite dann steht die komplette Applikation für die Zeit.

Geht das auch anders?

Danke!


----------



## faetzminator (4. Mai 2009)

mach das in einem neuen Thread, der jeweils 5min wartet und dann das restliche Programm benachrichtigt. Du sprichst wohl von einem GUI?


----------



## olli-h (4. Mai 2009)

Ja, es ist mit einer GUI! Die GUI steht dann komplett. Wie kann ich das verhindern?


----------



## ARadauer (4. Mai 2009)

```
package timertest;

import java.util.Timer;
import java.util.TimerTask;



public class TimerTest {

   /**
    * @param args
    */
   public static void main(String[] args) {

      Timer t = new Timer();
      
      t.schedule(new TimerTask(){

         @Override
         public void run() {
            System.out.println(System.currentTimeMillis());            
         }
         
      }, 0, 5000); //alle 5 sekunden...
      
   
   }

}
```
schau dir das mal an....
du kannst den Timer Task auch in eine eigen Klasse auslagern... du machst eine klasse die TimerTask implementiert und gibtst dem Timer ein Objekt dieser Klasse dan mit...


----------



## olli-h (4. Mai 2009)

Öhm, was mache ich dann? Leider bein ich neu in Java. Die Klasse habe ich noch hinbekommen, aber wie rufe ich diese dann auf?


----------



## faetzminator (4. Mai 2009)

du musst einfach den Inhalt hier in der main() in eine Klasse und Methode deiner Wahl kopieren. in run() muss dann der Aufruf einer Methode von dir stattfinden, welcher den Connect macht und dein GUI updated


----------



## ARadauer (4. Mai 2009)

wo in meinem code System.out.println(System.currentTimeMillis());    steht, connectest du dich zum server und machst dein zeugs...
das läuft in einem eigenen thread und wird alle 5 sekunden (5000 ms ausgeführt)


----------



## ARadauer (4. Mai 2009)

bzw poste mal deinen ganzen code


----------

