Есть ли инструмент, который анализирует код .NET и находит условия гонки?
У меня есть немного кода, который имеет общедоступное статическое свойство, которое получает или создает личное статическое поле. Он также имеет открытый статический метод, который устанавливает это поле в значение null (... да, я знаю!..)
Поскольку нет никаких блокировок вокруг любого из этих методов, это безопасная ставка, что в будущем все будет ужасно ошибочно. Мне нужен инструмент, который будет рекурсивно проходить через вещи, которые называют один из этих методов, и посмотреть, было ли что-то создано в другом потоке.
Я ищу инструмент или, возможно, nDepend SQL script (если это возможно).