arrow
返回

Consistency Validation Method for Java Fine-Grained Lock Refactoring

delete2021-01-01
delete1
delete
OA
AI
张杨 封面图
张杨 (Yang Zhang)
C
Chunxia Li
Y
Yu Bai *
DOI:10.1109/ACCESS.2021.3120414delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Many existing refactoring tools reduce the possibility of lock conflicts and improve the concurrency of the system by reducing lock granularity and narrowing the scope of locked objects. However, such refactorings can lead to changes in concurrent program behavior, introduce concurrency errors, and often even produce code that does not compile or can be compiled but has changed semantics. To address the problem of changes in concurrent program behavior caused by transferring from coarse-grained locking to fine-grained lock refactoring, a refactoring consistency validation method for fine-grained locking is proposed. Firstly, the types of behavioral changes caused by the existing refactoring engine are analyzed in terms of thread interactions. Secondly, the relevant consistency checking rules are summarized according to the types. Finally, with the help of various program analysis techniques such as call graph analysis, alias analysis and side-effect analysis, the corresponding checking algorithms are designed according to the consistency checking rules to check the consistency of the program before and after refactoring. We implement an automatic validation tool as an Eclipse plug-in. Our approach is verified by ten open-source projects including HSQLDB, Xalan and Cassandra, etc. A total of 1,483 refactoring methods were tested, and 60 inconsistent synchronization behaviors were found, which improved the robustness of refactoring in terms of data dependence and execution order.
Keyword:
Synchronization
Tools
Computer bugs
Licenses
Java
Programming
Degradation
Fine-grained lock
refactoring
consistency validation
alias analysis
side-effect analysis

期刊

IEEE Access 封面图
IEEE Access
IF:
3.6
论文数:
9.8W
被引数:
29.4W

机构

暂无机构信息
引用论文

引用论文

err分享
err收藏
User-Centered BCI Videogame Design
err2016-08-10
err0
PREAI
errEmilie Loup-Escande; Fabien Lotte; Guillaume Loup; Anatole Lécuyer
err分享
err收藏
err分享
err收藏
err分享
err收藏
Automated Behavioral Testing of Refactoring Engines
err2013-02-01
err83
PREAI
errSoares, Gustavo; Gheyi, Rohit; Massoni, Tiago
err分享
err收藏
Making Program Refactoring Safer让程序重构更安全
err2010-07-01
err72
PREAI
errSoares, Gustavo; Gheyi, Rohit; Serey, Dalton; Massoni, Tiago
err分享
err收藏
The influence of light quality on rose flower senescence: involvement of abscisic acid
err1995-03-01
err0
PREAI
errGinette Garello; Claudine Ménard; Blanche Dansereau; Marie-Thérèse Le Page-Degivry
err分享
err收藏
学者 查看更多内容