Java Daemon/Service

latogt

Grünschnabel
Moin zusammen,

vielleicht kann man mir mal weiterhelfen. Habe da ein kleines Verständnisproblem. Ich bin gerade dabei mit Java Threads zu programmieren. Hat man einen Thread kann dieser mit isDaemon(true) als Hintergrund-Thread geschaltet werden.

Was macht ein Thread im Hintergrund? Wenn ich das richtig verstanden habe, beeinflusst der nicht das main Programm sondern läuft separat. Ist allerdingss das Programm abgelaufen wird auch dieser Thread (dann als letzter) terminiert. Habe ich das richtig verstanden?

Weiterhin habe ich ausprobiert mit Windows ein Java Dienst zu erstellen, der als Prozess also dauerhaft im System läuft. Dauerhaft heißt also, dass in einer Endlosschleife der Prozess ausgeführt wird und auf z.B. Ereignisse wartet.

Nun frage ich mich, ob diese beiden Themen etwas miteinander zu tun haben oder nicht? Bisher bin ich immer davon ausgegangen, ein Daemon sei das gleiche wie ein Windows-Dienst. Der von mir eingerichtete Dienst benutzt aber weder Threads noch den Befehl, der einen Thread zu einem Hintergrund-Thread macht. Haben diese beiden obigen beschrieben Situationen also nichts miteinander zu tun?
 

lubu

Mitglied
Hi,

ich programmiere auch mit Threads allerdings benötige ich nicht die von Dir beschriebene Form, da der Thread an sich schon das lierfert was ich benötige, nämlich die Nebenläufigkeit.

Um das ganze als Dienst unter Windows laufen zu lassen, gibt es das Programm JavaService unter http://forge.objectweb.org/projects/javaservice/

Tschau Lutz