Java lock contention antipatterns and their detection within Java code
Date
2023-04-01
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Java Based Multithreaded programs are used in a wide variety of applications and consequently many developers are required to create code designed for synchronized environments. However, finding problems in synchronized code can be a time-consuming task, and an inability to properly find and fix all problems results in contention problems and failures. Currently the approach used to find these problems is to run the code and, if problems are found, further investigate related areas. We have created a static analysis program that examines input Java code and checks it against a series of antipatterns to determine possible issues. The program was tested on several programs designed as examples of the antipatterns, and a set of open-source code. It was found that some of the antipatterns created do appear in open-source java code, and the tool created for their identification was able to reliably locate them in testing and open-source code.
Description
Keywords
Java concurrency, Lock-contention, Run-time faults, Static analysis, Antipatterns