How to find deadlock, not hitting it
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.
Nikita works as a research engineer in research group dxLab at Devexperts. He is a student at ITMO university and also teaches a course on concurrent programming at the same university together with Roman Elizarov.