期刊文献+

面向Java多线程机制的软件重构方法 被引量:9

Software Refactoring for Java Threads
下载PDF
导出
摘要 针对Java语言中Thread和Executor两种线程机制在线程管理模式、代码编写量和性能上的不同,提出了一种面向Java多线程机制的软件自动重构方法,该方法可以实现Thread和Executor之间的自动重构转换,进而帮助程序员选择更适合的线程机制.在Eclipse JDT环境下实现了从Thread到Executor的自动重构工具Rethreader.在实验中,使用Rethreader对JGF基准测试程序套件中的Series、Crypt、Lufact、Sparsematmult和Montecarlo等基准程序进行了重构测试,实验结果表明,Rethreader可以在小于1s的短时间内实现从Thread到Executor的转换. Java thread mechanisms,such as Thread and Executor,are different in the thread management pattern,code and the performance.To implement the automated refactoring between different thread mechanism and help programmers to choose the right thread mechanism,an automated refactoring method was proposed for Java thread mechanism able refactoring between Thread and Executor.To test the validity of the method,an automated refactoring tool named Rethreader was developed in Eclipse JDT.In the experimentation,several programs in the Java Grande Form(JGF)were tested,including Series,Crypt,Lufact,Sparsematmult and montecarlo.The experimental results show that the Rethreader can successfully implement the automatic refactoring from Thread to Executor within 1 s.
作者 张杨 柳晨光 张冬雯 郑琨 郑雅洁 ZHANG Yang;LIU Chen-guang;ZHANG Dong-wen;ZHENG Kun;ZHENG Ya-jie(School of Information Science and Engineering,Hebei University of Science and Technology, Shijiazhuang,Hebei 050000,China)
出处 《北京理工大学学报》 EI CAS CSCD 北大核心 2018年第11期1149-1155,共7页 Transactions of Beijing Institute of Technology
基金 国家自然科学基金资助项目(61440012) 河北省自然科学基金资助项目(F2016208007) 河北省自然科学基金重点基础研究专项(18960106D) 河北省高等学校青年拔尖人才计划项目(BJ2014023) 河北省教育厅科学研究项目(QN2016139)
关键词 Thread框架 Executor框架 软件重构 软件分析 抽象语法树 Thread framework Executor framework software refactoring software analysis abstract syntax tree
  • 相关文献

参考文献1

二级参考文献16

  • 1WANG Yong-cai,ZHAO Qian-chuan,ZHENG Da-zhong.Fork-Join program response time on multiprocessors with exchangeable join[J].Journal of Zhejiang University-Science A(Applied Physics & Engineering),2006,7(6):927-936. 被引量:1
  • 2LEA D. A Java Fork/Join framework[C]// Proceedings of the 2000 ACM Conference on Java Grande. New York: ACM, 2000: 36-43.
  • 3GONZáLEZ J F. Java 7 concurrency cookbook[M]. Birmingham: Packt Publishing, 2012:171-205.
  • 4SMITH L A, BULL J M, OBDRIZALEK J. A parallel Java grande benchmark suite[C]// Proceedings of the 2001 ACM/IEEE Conference on Supercomputing. New York: ACM, 2001: 6-15.
  • 5DIG D, MARRERO J, ERNST M D. Refactoring sequential Java code for concurrency via concurrent libraries[C]// Proceedings of the 31st International Conference on Software Engineering. Washington, DC: IEEE Computer Society, 2009: 397-407.
  • 6LUJáN M, MUKARAKATE G, GURD J R, et al. DIFOJO: a Java fork/join framework for heterogeneous networks[C]// Proceedings of the 13th Euromicro Conference on Parallel, Distributed and Network-based Processing. Piscataway: IEEE, 2005:297-304.
  • 7OJAIL M, DAVID R, LHUILLIER Y, et al. ARTM: a lightweight Fork-Join framework for many-core embedded systems[C]// Proceedings of the 2013 Conference on Design, Automation and Test in Europe. San Jose: EDA Consortium, 2013:1510-1515.
  • 8LUI J C S, MUNTZ R R, TOWSLEY D. Computing performance bounds of Fork-Join parallel programs under a multiprocessing environment[J]. IEEE Transactions on Parallel and Distributed Systems, 1998, 9(3):295-311.
  • 9GARIBAY-MARTINEZ R, NELISSEN G, FERREIRA L L, et al. On the scheduling of Fork-Join parallel/distributed real-time tasks[C]// Proceedings of the 2014 9th IEEE International Symposium on Industrial Embedded Systems. Piscataway: IEEE, 2014:31-40.
  • 10GAO A, RRA K, SCHELLEKENS M. Static average case analysis Fork-Join framework programs based on MOQA method[C]// Proceedings of the 6th International Symposium on Parallel Computing in Electrical Engineering. Washington, DC: IEEE Computer Society, 2011:1-6.

共引文献1

同被引文献106

引证文献9

二级引证文献24

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部