bonjour,

je voudrais utiliser la fonctionnalité timer du module threading
mais je n'arrive pas a passer des arguments a la classe

un exemple est montre sur le site mais sans passage de parametre

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class MyTimer:
    def __init__(self, tempo, target, args= [], kwargs={}):
        self._target = target
        self._args = args
        self._kwargs = kwargs
        self._tempo = tempo
 
 
    def _run(self):
        self._timer = threading.Timer(self._tempo, self._run)
        self._timer.start()
        self._target(*self._args, **self._kwargs)
 
    def start(self):
        self._timer = threading.Timer(self._tempo, self._run)
        self._timer.start()
 
    def stop(self):
        self._timer.cancel()
 
def gabarit():
     print unstr, time.clock()
 
 
Te=0.5
a = MyTimer(Te,gabarit,["MyTimer"])
 
 
a.start()
time.sleep(5.5)
print "Timer arrete"
a.stop()
time.sleep(2.0)