Testing concurrent algorithms with Lincheck
The talk about testing concurrent algorithms, how Lincheck helps (spoiler: it’s indispensable in JVM world) and a little about its internal structure.
Everybody knows that concurrent programming is bug-prone. Moreover, some bugs in complicated algorithms occur rarely and are hard to reproduce; thus, it is difficult to detect them via simple hand-written tests. In this talk, we discuss Lincheck tool for testing and debugging concurrent code. We will talk about both the capabilities and the API of the tool, and implementation details.