[Java/C#] Arret d'un Thread par le GC

Arret d'un Thread par le GC [Java/C#] - Java - Programmation

Marsh Posté le 15-03-2005 à 23:15:19    

Hello,
 
une petite question aux experts Java/C#.
avec un "pseudo" code comme celui-ci:
 

Code :
  1. public class MyThread implements Runnable{
  2.   void Run(){
  3.     while(true);
  4.   }
  5. }
  6. public void static main(){
  7. MyThread t = new MyThread();
  8. t.start();
  9. t = null;
  10. while(true);
  11. }


 
 
Est-ce que le thread s'arrete?
Si le Garbage Collector est appelé, il va pouvoir detruire puisque l'application ne possède pas de référence de l'objet de type MyThread.
il va  donc arrêter le thread?
 
 
Sylvain

Reply

Marsh Posté le 15-03-2005 à 23:15:19   

Reply

Marsh Posté le 15-03-2005 à 23:44:21    

non, le thred ne s'arrête pas.

Reply

Marsh Posté le 16-03-2005 à 01:35:13    

le main de ton thread principal n'a plus de référence sur le thread secondaire, ok
mais le thread secondaire garde une référence sur lui-même (this) et il tourne toujours
donc le GC ne tuera pas le thread
 
le rôle du GC est juste de récup les allocs mémoires faites quand on n'en a plus besoin
si ton thread tourne, il a besoin d'un minimum d'espace mémoire pour s'exécuter :)
 
a+


---------------
TReVoR - http://dev.arqendra.net - http://info.arqendra.net
Reply

Marsh Posté le 16-03-2005 à 01:54:53    

yep en fait ca vaudrait mieux qu'il en s'arrete pas :d
:jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed