C # /. NET инструмент анализа, чтобы найти условия гонки / взаимоблокировки

Есть ли инструмент, который анализирует код .NET и находит условия гонки?

У меня есть немного кода, который имеет публичное статическое свойство, которое получает или создает личное статическое поле. Он также имеет открытый статический метод, который устанавливает это поле в нуль (... да, я знаю! ..)

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

Я ищу инструмент или, возможно, сценарий SQL nDepend (если это возможно).

Ответы на вопрос(6)

Ваш ответ на вопрос