{"title":"Exception analysis for multithreaded Java programs","authors":"Sukyoung Ryu, K. Yi","doi":"10.1109/APAQS.2001.989998","DOIUrl":null,"url":null,"abstract":"This paper presents a static analysis that estimates uncaught exceptions in multithreaded Java programs. In Java, throwing exceptions across threads is deprecated because of the safely problem. Instead of restricting programmers' freedom, we extend the Java language to support multithreaded exception handling and propose a tool to detect uncaught exceptions in the input programs. Our analysis consists of two steps. The analysis firstly, estimates concurrently evaluated expressions of the multithreads in Java programs by the synchronization relation among the threads. Using this concurrency information, the program's exception flow is derived as set-constraints, whose least model is our analysis result. Both of these two steps are proved safe.","PeriodicalId":145151,"journal":{"name":"Proceedings Second Asia-Pacific Conference on Quality Software","volume":"70 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2001-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Second Asia-Pacific Conference on Quality Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APAQS.2001.989998","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11
Abstract
This paper presents a static analysis that estimates uncaught exceptions in multithreaded Java programs. In Java, throwing exceptions across threads is deprecated because of the safely problem. Instead of restricting programmers' freedom, we extend the Java language to support multithreaded exception handling and propose a tool to detect uncaught exceptions in the input programs. Our analysis consists of two steps. The analysis firstly, estimates concurrently evaluated expressions of the multithreads in Java programs by the synchronization relation among the threads. Using this concurrency information, the program's exception flow is derived as set-constraints, whose least model is our analysis result. Both of these two steps are proved safe.