[Java] Endormir une application

Résolu/Fermé
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 - 24 août 2005 à 13:31
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 - 25 août 2005 à 14:52
Bonjour,

je souhaite endormir mon application durant 5 secondes.
J'ai donc essayé d'écrire dans ma classe :
try {
this.wait(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}

Mais j'obtiens l'erreur suivante :
current thread not owner

Comment remédier à ce problème ?
A voir également:

2 réponses

limite Messages postés 1207 Date d'inscription mercredi 3 août 2005 Statut Membre Dernière intervention 11 décembre 2005 67
25 août 2005 à 00:15
Salut

J'ai un peu chercher , mais je débute sous java, donc, si je me suis planté
fais le moi savoir

Object o=new Object();
try
{
    synchronized(o) { o.wait(5000); }
}
catch(InterruptedException ex) { }// ex ou e j'hésite


il faut voir si synchronized est encore d'actualité sous les nouvelles
versions java.



lu ici -->
http://www.sogid.com/javalist/f2002/wait.html


Sinon il y a la méthode sleep


On peut simuler une "pause" dans l'exécution d'une application en utilisant la méthode sleep() de la classe Thread. Cette méthode force le Thread courant à cesser son exécution pendant le temps passé en paramètres.

Par exemple :

long milliSecondes = 500L; 
int nanosSecondes = 5000; 
Thread.sleep(milliSecondes, nanosSecondes);

// ou
Thread.sleep(milliSecondes);


Ces deux méthodes sont susceptibles de lever une InterruptedException.
0
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 août 2005 à 14:52
Merci ca fonctionne (Thread.sleep)
0
fanou Messages postés 448 Date d'inscription jeudi 16 mai 2002 Statut Membre Dernière intervention 1 décembre 2010 146
25 août 2005 à 00:20
Bonsoir Jebok

As-tu essayé wait(secondes*5000) ?
0
jebok Messages postés 358 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 23 octobre 2007 51
25 août 2005 à 14:52
Oui j'ai essayé mais ca ne marche pas. cf mon 1er message.
Merci quand meme
--
0