The paper investigates the use of the Java 8 stream processing facilities from within the context of the Real-Time Specification for Java. Java 8 stream processing uses the Java 7 Fork/Join framework. We demonstrate that it is not possible, with the current framework, to supply a pool of real-time worker threads with which to perform stream evaluation. We show what changes would need to be made to the framework for it to be used in a real-time context. Our evaluation shows that without such changes, use of the current Java 8 stream processing faculties by real-time threads can result in significant priority inversions. We also consider what hooks the RTSJ would need to provide that would allow real-time Fork/Join pools to be generated with- out changes to the source code.

BibTex Entry

@inproceedings{Mei2015,
 author = {H. Mei and I. Gray and A. J. Wellings},
 booktitle = {The 13th International Workshop on Java Technologies for Real-time and Embedded Systems},
 title = {Integrating Java 8 Streams with The Real-Time Specification for Java},
 year = {2015}
}