Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2013-05-16 18:16:43 Comment faire une pause ?

Marty
membre
Date d'inscription: 2012-04-27
Messages: 143

Comment faire une pause ?



Hello,

Comment faire une pause dans le déroulé d'un programme ?
J'envoie des commandes sur le réseau, et d'après de protocole il est précisé que la réponse du serveur est dispo sur le réseau au bout de 2 secondes max. Pour être sur de bien lire la valeur j'aimerais attendre ces 2 secondes.

Comment faire une pause ? (delay ? pause ? sleep ?)

Ceci dit je ne trouve pas franchement ça très "propre"... votre avis ? je ne suis pas un vrai développeur, si quelqu'un à plus d'expérience, comment vous faites dans la "réalité" de votre métier ?

Merci

Hors ligne

 

#2 2013-05-22 22:53:54 Re : Comment faire une pause ?

caracteriel
membre
Date d'inscription: 2011-07-03
Messages: 130

Re: Comment faire une pause ?



Je ne sais pas si l'on peut faire une pause mais tu peux voir du côté ofThread qui te permet de lancer un processus en parallèle de ta boucle ou te servir de ofHttpResponse. Il me semble que cette dernière à une méthode qui te permet d'attendre.

Hors ligne

 

#3 2013-05-23 10:27:09 Re : Comment faire une pause ?

Marty
membre
Date d'inscription: 2012-04-27
Messages: 143

Re: Comment faire une pause ?



Salut,

Merci pour l'info mais je ne pense pas que cela me soit utile car je me connecte en TCP et pas en HTTP.
Le thread il va falloir que je le mette en place mais j'ai du mal à comprendre comment ça fonctionne. Du moins je vois le principe, mais il faudrait que je passe des parametres au thread et de ce que j'en comprend, il me faut faire pas mal de modifs pour cela. En gros mettre tout ce qui est accès réseau en thread et pas seulement le "test" de connexion. Le thread est indispensable ici pour éviter de bloquer l'appli, mais en soi cela ne changera rien au probleme de pause.

Hors ligne

 

#4 2014-01-03 20:54:26 Re : Comment faire une pause ?

solene99
nouveau membre
Date d'inscription: 2014-01-03
Messages: 1

Re: Comment faire une pause ?



Marty a écrit:

Hello,

Comment faire une pause dans le déroulé d'un programme ?
J'envoie des commandes sur le réseau, et d'après de protocole il est précisé que la réponse du serveur est dispo sur le réseau au bout de 2 secondes max. Pour être sur de bien lire la valeur j'aimerais attendre ces 2 secondes.

Comment faire une pause ? (delay ? pause ? sleep ?)

Ceci dit je ne trouve pas franchement ça très "propre"... votre avis ? je ne suis pas un vrai développeur, si quelqu'un à plus d'expérience, comment vous faites dans la "réalité" de votre métier ?

Merci

Bonjour , j'ai exactement le même problème pour mon application www.comparateur-mutuelle-assurance-sante.com/  , avez vous trouvé une solution ?

Hors ligne

 

#5 2014-01-04 10:09:19 Re : Comment faire une pause ?

FM64
membre
Lieu: Paris 19
Date d'inscription: 2013-10-10
Messages: 18
Site web

Re: Comment faire une pause ?



Une technique bien utile pour retarder des évènements consiste à lancer un "chrono" puis de déclencher des évènements en fonction de celui-ci.
Je ne connais pas bien OpenFrameworks mais grossièrement:
Au moment ou tu envoie ta requête tu commence à incrémenter un compteur (par exemple en utilisant une fonction qui te donne l'heure de ton ordinateur ou qui te donne le temps écoulé depuis le lancement du programme).
Pour lire la réponse, tu vérifie d'abord que ton compteur a atteint une valeur que tu as préalablement spécifiée, 2000ms dans ton cas.

J'espère que ça t'aidera, sinon tu peux regarder ça: http://arduino.cc/en/Tutorial/BlinkWithoutDelay
C'est le code Arduino qui m'a fait comprendre ce principe, c'est pas openFrameworks mais le code est bien détaillé et ce sera facile à retranscrire.

Hors ligne

 

#6 2014-02-05 09:55:29 Re : Comment faire une pause ?

taktik
membre
Date d'inscription: 2014-02-05
Messages: 20

Re: Comment faire une pause ?



Je te conseille de regarder du côté des listener; en programmation Objet, c'est la façon de faire "correcte" et pas forcément la plus compliqué.

1. Tu prépare un listener (un écouteur)
2. Tu envois ta requète qui sera "écoutée" par ton listener
3. Lorsqu'on ton listener reçoit l'événement que tu attends (réponse serveur...) il déclenche une fonction


Avec un delay, tu n'as pas de garantie si il y a un soucis de reception ce qui t'obliges à faire une série de tests.

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024