The concurrency utilities in the Java library supply a feature called the executor framework that initiates and controls the execution of threads. It provides many adjustable parameters and extensibility hooks to be useful across a wide range of contexts for specifically configuring a pool of threads to execute submitted runnables depending on the application's specific needs. The Real-Time Specification for Java (RTSJ) supports asynchronous event handling (AEH), where the mapping of handlers to server threads is performed by the real-time JVM. In the past we have criticized the RTSJ facility as it lacks user configurability. Two simple changes to the RTSJ model would allow the user to provide their own policy for mapping handlers to server threads using the executor framework. Although the executor framework is not RTSJ-aware it is very flexible. This paper therefore discusses the feasibility of using the framework to implement various AEH mapping models. We first identify the issues associated with adapting the executor framework to AEH in the RTSJ. Based on the findings, we propose a blueprint on how the framework can be incorporated with AEH in the RTSJ with real-time guarantees. By doing so, the programmer can be given comprehensive configurability over the pool of threads provided by the executor framework to execute asynchronous event handlers in the RTSJ with realtime guarantees.
Download Not Available

BibTex Entry

@inproceedings{Kim2010,
 address = {New York, NY, USA},
 author = {MinSeong Kim and Andy Wellings},
 booktitle = {JTRES '10: Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems},
 doi = {http://doi.acm.org/10.1145/1850771.1850774},
 isbn = {978-1-4503-0122-0},
 location = {Prague, Czech Republic},
 pages = {16--25},
 publisher = {ACM},
 title = {Using the executor framework to implement asynchronous event handling in the RTSJ},
 year = {2010}
}