Bonjour à tous.
je vous écrit car j'ai un probléme de evenment et donc implicitement de thread. Je m'explique :
J'utilise un module qui déclenche un evenment lorsque l'utilisateur fait un mouseDown. Le probleme est que je dois faire patienter ce thread jusqu'à l'arrivé d'une autre action de l'utilisateur qui decidera de l'action à faire (celle-ci intervient au max à 400 ms aprés).
Le probléme c'est que je ne peut pas faire attendre ce thread par un timer car la classe Timer est multi-threadé (cela implique que l'evenment en cours se termine, pour laisser la place a un autre evenment. Or je ne peut pas terminer la méthode en cours).
Un sleep ne peut pas marcher car il bloque le thread mais aussi tous le programme.
Un monitor ou un mutex ne marche pas car comme tous sont des evenment utilisateur, cela implique que ce sont tous des thread different. Or avec un monitor ou un mutex on peut prendre une ressource pour la bloquer, mais on ne peut la libéré que par le meme thread (et donc par le evenment)
Derniere chose, il n'est bien evidement pas possible d'heriter de ce module pour surchargé les methodes invoqué lors du déclenchement d'un evenment : c'est un activeX importer dans dotnet via aximp, il n'est pas conforme au CLR.
Donc, si quelqu'un a une idée je suis prenneur.
merci à tous (au moins d'avoir pris le temps de lire le message jusqu'aux bout.)
Partager