bjr,

j'ai un souci avec System.Timers.Timer, quand je me un timer cours, et que je debugg, j'appel plusieur fois mon ElapsedEventHandler...

alors que mon besoin c est de:
-avoir une minuterie qui appel une fonction, mais qu'une seul fois !


voila le code :
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
 
            private static void StartScheduleTask()
            {
                m_Timer = new System.Timers.Timer(ProcedureSleep());
                m_Timer.Elapsed += new System.Timers.ElapsedEventHandler(t_Elapsed);
                m_Timer.AutoReset = true;
                m_Timer.Start();
 
            }
 
 
 
            static void t_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
            {
                    m_Timer.Dispose();
                    m_Timer.Stop();
                    m_Timer = null;
 
 
 
.....
 
                    StartScheduleTask();
}

en fait le timer se rappel sans arret, créant un nouveau timer...

le probleme c est que si mon timer et bas (1seconde) et que ma tache dure plus longtemps, je crois que le timer re-execute ma tache... :/, c est pour ca que j'essaye de le detruir imediatement.... mais je crois que le probleme n'est valable quand debug ( car je fais des f11... et je suis plus lent que le system...)