Тестирование многопоточных алгоритмов с помощью Lincheck

День 1 /  / Зал 1  /  RU /

Каждый, кто хоть раз писал многопоточный код, понимает, насколько легко в нем допустить ошибку. Более того, в сложных алгоритмах некоторые ошибки воспроизводятся крайне редко и только на определенных исполнениях, а, значит, простыми тестами их обнаружить проблематично. В этом докладе мы поговорим про инструмент Lincheck, который помогает в тестировании и отладке многопоточного кода. Обсудим как его возможности и API, так и внутреннее устройство.

Комментарий программного комитета:

Один из немногих фреймворков для автоматического тестирования многопоточного кода. Если вы хоть раз ставили volatile и synchronized, то к прослушиванию обязательно. Если не ставили — тем более.


Никита Коваль
JetBrains

Никита разрабатывает алгоритмы для корутин в команде Kotlin и получает PhD в IST Austria. Помимо этого, преподает курс по многопоточному программированию в Университете ИТМО и интересуется верификацией и анализом программ.