[Timer] System.Timers.Timer thread se chevauchent !
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:
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...)