Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Data Race Detector (DRD) - это утилита для динамического обнаружения гонок (data races) в Java-программе. DRD реализован в виде java agent-a, то есть он запускается в той же JVM, что и целевое приложение, и динамически ищет фактические и некоторые потенциальные гонки в приложении во время его работы. Результаты работы DRD выводятся в лог-файлы. По каждой обнаруженной гонке печатается информация, которая будет полезна для устранения гонки в коде исходной программы.

Статус: release 0.7

Установка

Delivery bundle представляет собой архив DRD-<version_number>.zip. Его нужно распаковать в какую-нибудь папку, которую далее по тексту мы назваем DRD_HOME_DIR.
В DRD_HOME_DIR находятся

...

  1. Сконфигурировать DRD - см. DocumentationDRD configuration.
  2. Найти место в вашем приложении, из которого непосредственно идет вызов java или javaw
  3. Прописать туда drd agent:

    Code Block
    java -javaagent:DRD_HOME_DIR/drd_agent.jar -Ddrd.settings.file=<...> ...

    если drd.setttings.file не указан, он по умолчанию ищется в DRD_HOME_DIR под именем drd.properties.

  4. Запустить исходное приложение и убедиться, что DRD Agent стартовал нормально (см. Анализ логов).
  5. Все обнаруженные гонки будут фиксироваться в файле drd_races.log

...