Bonjour,
J'ai un problème au niveau de la gestion d'un thread.
Dans mon code, j'ai une classe (non thread elle-même) qui créé et lance un thread. Cette classe envoie des données que le thread doit copier dans un fichier.
Seulement, le thread n'arrive pas tout le temps à la fin de son traitement, il reste dans sa boucle infinie.
La boucle du thread est conditionnée par un booléan à vrai au lancement. Je le mets à faux quand il n'y a plus de données à envoyer.
Dans le cas où le thread se termine, il n'y a pas de problème, toutes les données sont copiées dans le fichier.
Dans l'autre, la chaîne que le thread doit copier n'est pas complète, elle est tronquée. Et je ne sais pas pourquoi.
Voici la classe principale, j'ai supprimé le superflu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39public class GenetiqueCube { // matrice binaire décrivant le cube private int[][][] matriceCube; // Thread pour sauvegarder le fichier private SaveFicThread myThread; public void affinage() { try { myThread = new SaveFicThread(); myThread.start(); } catch(IOException e) { e.printStackTrace(); } for(int i = 1; nbEssaiTmp > 0; i++) { try { String generation = Outils.matriceToString(); myThread.addGeneration(generation); } catch(Exception e) {} } try { myThread.setEcritureOK(false); } catch(Exception e) { e.printStackTrace(); } } }
Et voici mon thread :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Merci beaucoup d'avance

 

 
		
		 
         
 

 
			
			

 
   


 Problème d'arrêt de Thread
 Problème d'arrêt de Thread
				 Répondre avec citation
  Répondre avec citation
Partager