Python > stopper une fonction

Résolu/Fermé
Hwi_noree Messages postés 37 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 19 mars 2009 - 22 oct. 2008 à 12:22
Hwi_noree Messages postés 37 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 19 mars 2009 - 22 oct. 2008 à 22:38
Salut tout le monde =)


Voilà, j'ai un code qui ressemble à ça :
_____________________
def F_1():
. . . . global x # au départ mon x est de l'ordre de 10
. . . . while x>1:
. . . . . . . . sleep(0.8) # ça je crois que ça sert a rien pour ce pb
. . . . . . . . Action() # sachant que mon Action fait tendre le x global vers 0

# ==> du coup, j'ai ma fonction F_1 qui tourne jusqu'à ce que x=<1
_____________________

Maintenant j'aimerais faire un truc du genre :

def F_2():
. . . . break(F_1)


avec plus loin un bouton qui lance et relance F_1
et un autre bouton qui lance F_2, c'est-à-dire qui met sur pause en quelque sorte ma F_2
(les boutons c'est ok)

5 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
22 oct. 2008 à 12:35
:-)

Ah la séparation des traitements/GUI, un vrai bonheur.

Donc tu veux que ton interface graphique continue à répondre même quand il y a des traitements.

Il faudrait faire du multithreading.

En gros, le thread principal s'occupe de l'interface graphique (comme maintenant), mais tu as un objet qui s'occupe des traitements et qui tourne dans un thread séparé.

Et par pitié, évite les 'global'.

Je vais essayer de te bricoler un exemple que je posterai ici.
0