Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ATTENDRE UN CERTAINS NOMBRE DE SECONDES/MILLISECONDES SANS "PERDRE LA MAIN"


Information sur la source

Catégorie :API Classé sous : pause, sleep, attendre, wait Niveau : Débutant Date de création : 25/10/2002 Date de mise à jour : 12/06/2007 00:59:05 Vu : 6 757

Note :
9,4 / 10 - par 5 personnes
9,40 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note


Description

Je n'ai pas trouver d'equivalent ici, je la poste donc en esperant ne pas creer de doublons.
La fonction sleep fait pareil, mais elle fige le programme, et vous ne pouvez plus faire aucunes actions dessus...contrairement à cette fonction :
 

Source

  • 'dans un module ou dans votre feuille :
  • Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
  • Private Declare Function GetTickCount Lib "kernel32" () As Long
  • Public Sub hbwait(millisecondes As Long)
  • Dim attente As Long
  • attente = GetTickCount + millisecondes
  • Do Until GetTickCount >= attente
  • DoEvents
  • Sleep 1
  • Loop
  • End Sub
  • 'et au moment ou vous voulez la pause :
  • hbwait 5000
'dans un module ou dans votre feuille :

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function GetTickCount Lib "kernel32" () As Long


Public Sub hbwait(millisecondes As Long)
Dim attente As Long
attente = GetTickCount + millisecondes
Do Until GetTickCount >= attente
DoEvents
Sleep 1
Loop
End Sub




'et au moment ou vous voulez la pause :
hbwait 5000

Conclusion

HB  
 

Historique

12 juin 2007 00:59:05 :
5 ans plus tard, dechargement du processeur par un sleep de 1sc ^^

Commentaires et avis

signaler à un administrateur
Commentaire de AntiSlash le 25/10/2002 21:45:43

ya une api qui fait la meme chose:
private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)

et donc tu fais
sleep 500 et ca attend 500 ms

mais contrairement à ton code, tout ton prog est arreté (tu ne peux pas déplacer ta fenetre ou cliquer...)
@+

signaler à un administrateur
Commentaire de hvb le 26/10/2002 11:34:10

Bah justement c'est ca l'interet, immagine tu fais une pause de 120secondes, ca la fout mal si l'user perd la main... d'ou l'interet de la boucle de doevents par rapport à sleep . et j'ai preciser dans l'entete que je connaissais sleep, mais merci quand meme ;)

signaler à un administrateur
Commentaire de Tidus le 14/11/2002 21:49:06

C'est intéressant. La fonction SLEEP a cet avantage que le système fige l'application pour la durée fixée : Aucune ressource système utilisée. La fonction qui est proposée ici fige le programme sans le figer, en fait, il se contente de regarder sa montre jusqu'à ce qu'il soit l'heure de continuer, ce qui bouffe des ressources systèmes, et en Graaaaaaande quantité sur un PC des plus antiques ... Mais qui en utilise encore ? (Nota pour ceux qui sont tentés de dire "Moiiiii !", je sais, moi aussi ...)

signaler à un administrateur
Commentaire de DNBPROCESS le 31/08/2003 15:15:22

sa s'appelle les événements !

c'est le placement de doevents qui fait tout !

signaler à un administrateur
Commentaire de DnasT le 03/01/2005 04:38:54

merci excellent ca ma rendu bien service ;)

signaler à un administrateur
Commentaire de Toune45 le 21/06/2005 11:06:47

En effet, tres interessant!
Il faut tout de meme se mefier que le contexte ne change pas!

signaler à un administrateur
Commentaire de Ryunosuke le 08/06/2006 09:30:54

simple et efficace!
je travaille sur un synchronisateur de contacts bdd oracle/outlook, et ta fonction permet de garder un controle sur l'application qui pourrait tourner longtemps si le nombre de contacts est important...
merci beaucoup!

Ryu

signaler à un administrateur
Commentaire de antho2005 le 08/04/2008 15:05:10

Je sais que cette source date mais c'est juste pour info:
Le sleep 1 n'est pas nécessaire ...

signaler à un administrateur
Commentaire de antho2005 le 08/04/2008 15:24:26

Annulé, j'avais pas vu l'historique de mise a jour ;)

signaler à un administrateur
Commentaire de CharlEm le 19/02/2009 14:32:53

Super, merci beaucoup

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Sleep / Wait [ par ymerej ] Bonjour,quel est l'équivalent en VB des fonctions comme Sleep(5), wait(5) qui permet d'attendre 5 secondes ?Vous allez me dire qu'on peut passer par u VBNET pause...sleep...pause...sleep... [ par bimbo777 ] Bonjour,J'ai un petit soucis en vbnet...je suis en train de créer une appli qui traite des taches...mon soucis c'est que toutes les taches s'ench PAUSE SYSTEM [ par QuiGonJinn ] Bonjour, JE souhaiterai que mon appli fasse son traitement, puis dorme pendant X secondes... La OK un sleep et puis l'affaire est réglée... Ma Pb avec la pause dans un programme [ par EvilGost ] Bonjour à toute la communauté de développeurs :)J'ai un petit problème avec une fonction de pause que j'ai pris sur VBfrance, la v Faire référence au thread en cours?? [ par lucasd ] j'ai 2thread dans mon program principal. Le problème est que quand je fais thread.sleep(1000); dans un des 2 threads, c'est tt le programme qui fais Attendre la fin de l'installation [ par Stevous ]     Bonjour a tous !J'ai un probleme avec un VBScript et j'espere que quelqu un pourra m'aider : Voici mon script :" Dim fso  Dim Attendre la réponse d'une porcedure [ par yvesyves ] Slt, je voudrais savoir comment mettre le code en pause tant que la valeur d'une procedure ne soit pas true. Par exemple Wait MaProcedure = True. Répo Attendre un evenement [ par shadow1779 ] Bonjour,je débute encore un peu en VB.NET sous VB 2005 (donc avec le framework 2.0), et je cherche a savoir comment guetter une action, je m'expl moniteur sous java(c.wait ,c.signal) [ par raoufpark ] comment implimenter par ex un sys producteurs consomaters dans un tempon svp moniteur sous java(c.wait ,c.signal) [ par raoufpark ] comment implimenter par ex un sys producteurs consomaters dans un tempon svp


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,686 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.