Thread et garbage collector.
Bonjour à tous.
J'ai une classe qui lance un thread dans le constructeur, thread qui peut servir n'importe quand (et qui ne doit pas s'arrêter). L'objet qui a lancé le thread n'est donc jamais détruit et le thread ne s'arrête jamais.
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| public class Toto {
Toto() {
new Thread() {
run() { while(true);}
}.start();
}
public static void main() {
Toto t = new Toto();
t = null;
}
} |
J'aimerais que le thread s'arrête quand on n'utilise plus l'objet. Une solution est d'ajouter une méthode stopThread() mais est-ce qu'il y a un moyen de savoir que l'objet n'a plus de référence vers lui, pour arrêter le thread automatiquement ?
Je ne sais pas si j'ai été clair.
Merci pour vos réponses :)