Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/12/2014, à 12:59

xana02

Casser un sleep dans une boucle while possible ?

Bonjour, j'ai un petit code qui s’exécute à l'action d'une commande , je voudrais que si $bp1 repasse a 0 pendant le sleep de 30 sec ça me casse ma boucle et ça j'arrive pas a le faire ...

waitButton ()
{
  echo -n "Waiting for button ... "
  while [ `gpio read $bp1` = 0 ]  ; do
    gpio write $relais0 0
        sleep 30
        gpio write $relais0 1
        done
      
}

Hors ligne

#2 Le 19/12/2014, à 14:08

claudius01

Re : Casser un sleep dans une boucle while possible ?

Même si cela est possible de "casser" ce sleep (ce que comprends comme un pkill), je trouve que cela n'est pas très joli joli...
Si cela est conforme au temps de réaction attendu, ne pourrais-tu pas plutôt réduire ce sleep à 2 secondes, en compter 15 pour faire les 30  secondes et tester le $bp1 repassant à 0 à la fin des 2 secondes et faire ce que tu veux.

PS: Je propose un sleep de 2 secondes car par expérience j'ai eu des surprises avec un sleep de 1 seconde  => A tester tout de même ;-)

Dernière modification par claudius01 (Le 19/12/2014, à 17:39)

Hors ligne