Java finalizers perform clean-up and finalisation of objects at garbage collection time. In real-time Java profiles the use of finalizers is either discouraged (RTSJ, Ravenscar Java) or even disallowed (JSR-302), mainly because of the unpredictability of finalizers and in particular their impact on the schedulability analysis. In this paper we show that a controlled scoped memory model results in a structured and predictable execution of finalizers, more reminiscent of C++ destructors than Java finalizers. Furthermore, we incorporate finalizers into a (conservative) schedulability analysis for Predictable Java programs. Finally, we extend the SARTS tool for automated schedulability analysis of Java bytecode programs to handle finalizers in a fully automated way.
|Titel||Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems : ACM International Conference Proceeding Series|
|Forlag||Association for Computing Machinery|
|Status||Udgivet - 2010|
Bøgholm, T., Hansen, R. R., Søndergaard, H., Ravn, A. P., & Thomsen, B. (2010). Schedulability Analysis for Java Finalizers. I Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems: ACM International Conference Proceeding Series Association for Computing Machinery. https://doi.org/10.1145/1850771.1850772