bonjour.
j'ai une boucle qui effectue des traitements pendant un très long. je voudrais arréter le traitement et sortir de la boucle après x secondes. comment faire simplement la chose ?
merci d'avance.
bonjour.
j'ai une boucle qui effectue des traitements pendant un très long. je voudrais arréter le traitement et sortir de la boucle après x secondes. comment faire simplement la chose ?
merci d'avance.
avec des Threads / Runnable
ps : j'ai ecrit tout ca "en live", il se peut qu'il y ait quelques erreurs de syntaxes...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 class Test { //boolean qui indique si on doit continuer ou arreter le traitement private boolean continuer = true; public void traitement() { Runnable r = new Runnable() { public void run() { try { Thread.sleep(TempsAAttendre); //a la prochaine itération de la boucle, la condition ne sera pas virifie, le programme sortira donc de la boucle continuer = false; }catch(RuntimeException e) { e.printStackTrace(); } } }; //lance le runnable qui va attendre le temps max new Thread(r).start(); while(continuer && taCondition) { //traitement long } } }
merci de ta réponse.
que doit valoir "taCondition" ?
taCondition doit contenir la condition d'arret de ta boucle que tu avais avant d'implementer ma solution..
par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 while(continuer && i<100000) { //traitement... }
Partager