78 votes

Comment trouver ce que l'état ManualResetEvent est dans?

Je suis en utilisant une instance de ManualResetEvent de contrôle de fil d'accès à une ressource, mais je suis en cours d'exécution dans des problèmes avec elle. Personne ne sait comment je peut trouver lors du débogage quel est l'état de l'objet est?

C'est-à-dire que je voudrais savoir si le ManualResetEvent bloque actuellement les fils et peut-être même le nombre et le fils, c'est le blocage.

101voto

Andrew Rollings Points 8361

Effectuer une WaitOne sur l'événement avec une valeur de délai d'expiration de zéro.

Elle renvoie true si l'événement est prévu, ou false si le délai d'attente se produit. En d'autres termes, la vraie -> événement, false -> événement n'est pas définie.

7voto

fab Points 755

Voici code du travail:

private ManualResetEvent pause = new ManualResetEvent(false);
pause.WaitOne(); // caller thread pauses
pause.Set();    // another thread releases paused thread

// Check pause state
public bool IsPaused { get { return !pause.WaitOne(0); } }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X