Неблокирующая блокировка

Я хочу запустить несколько новых потоков каждый для одной повторяющейся операции. Но когда такая операция уже выполняется, я хочу отменить текущую задачу. В моем сценарии мне нужны только очень свежие данные - потерянные данные не являются проблемой.

В MSDN я нашел класс Mutex , но, насколько я понимаю, он ждет своей очереди, блокируя текущий поток. Также я хочу спросить вас: Существует ли что-то уже в .NET framework, что выполняет следующие функции :

  1. Выполняется ли уже какой-то метод M?
  2. Если да, return (и позвольте мне увеличить счетчик для статистики)
  3. Если нет, запустите метод M в новом потоке
9
задан DerMike 9 February 2012 в 10:58
поделиться