F
Firephoenix
Gast
Hi,
ich schraube gerade an einer kleinen Client-Server anwendung die auf normalen Sockets basiert,
im Server benutze ich im Moment einen ExecutorService, im Client einen normalen Thread/Runnable um den Input der anderen Seite auszulesen.
Die Threads blocken durch die read-operationen natürlich regelmäßig (auch wenn ich die jeweilige Anwendung beende).
Wie sieht denn in so einem Fall der saubere Weg aus die Anwendung zu beenden?
(speichern etc ist erledigt, ich muss nur die Threads loswerden)
-Setze ich alle Threads für die inputs als deamon und lasse der JVM die arbeit die abzuschießen wenn ich meine Anwendung beende?
-Ist es sinnvoller die Threads manuell zu beenden (interrupt?).
ich schraube gerade an einer kleinen Client-Server anwendung die auf normalen Sockets basiert,
im Server benutze ich im Moment einen ExecutorService, im Client einen normalen Thread/Runnable um den Input der anderen Seite auszulesen.
Die Threads blocken durch die read-operationen natürlich regelmäßig (auch wenn ich die jeweilige Anwendung beende).
Wie sieht denn in so einem Fall der saubere Weg aus die Anwendung zu beenden?
(speichern etc ist erledigt, ich muss nur die Threads loswerden)
-Setze ich alle Threads für die inputs als deamon und lasse der JVM die arbeit die abzuschießen wenn ich meine Anwendung beende?
-Ist es sinnvoller die Threads manuell zu beenden (interrupt?).