jbreak JBreak 2017 (04.04.2017 — 04.04.2017)

How to find deadlock, not hitting it


Developing a tool for detecting potential deadlocks. The talk will cover algorithms, class transformation, performance of the implementation and so on.

Deadlocks are one of the main problems in multithreaded programming. This talk presents Dl-Check – a novel tool for detecting potential deadlocks at runtime of Java programs. In order to implement this tool, the bytecode instrumentation is required as well as the ASM framework is advantageous.

In the first part of the talk, the general approach and the algorithm for online detection of potential deadlocks will be presented. As for the second part, byte-code instrumentation and several useful techniques and associated cases related to it will be discussed.