Инструмент для обнаружения злоупотреблений API POSIX pthreads, но не Helgrind

По какой-то причине я не могу использовать Helgrind для обнаружения злоупотреблений API POSIX pthreads (например, разблокировка неблокированного мьютекса, освобождение памяти, которая содержит заблокированный мьютекс и т. Д.). Я пытался найти другой инструмент, но на самом деле не удалось. Как я выяснил, Dr. Memory не может использоваться для обнаружения ошибок потоков, а Thread Sanitizer способен обнаруживать только гонки данных. Это действительно так? Не могли бы вы порекомендовать мне другие инструменты для этого?

1 ответ

Thread Sanitizer обнаруживает упомянутые вами вещи (разблокировку разблокированного мьютекса, уничтожение заблокированного мьютекса) и еще несколько ошибок, таких как утечка потоков.

Другие вопросы по тегам