<link rel="stylesheet" href="styles.cf390c6bfbe7555f.css"> Skip to main content

A more expressive monitor for concurrent Java programming

Loading...
Thumbnail Image

Date

Journal Title

Journal ISSN

Volume Title

Publisher

DOI

Abstract

The thread synchronization mechanism employed by Java is derived from the Hoare's monitor concept. In order to minimize its implementation complexity, the monitor provided by Java is quite primitive. This design decision prefers simple concurrent objects and single-thread programs. However, we think the Java monitor is over simplified for developing more elaborated concurrent objects. Besides, several features of the Java monitor will bring extra overhead when thread contention gets higher. Currently, we have identified five drawbacks of the Java monitor. In this paper, we will first analyze these drawbacks in depth, and then propose a new monitor-based synchronization mechanism called EMonior. It has better expressive power, and introduces fewer overheads than the Java monitor when contention occurs. EMonior uses a preprocessor to translate the Java programs containing EMonitor syntax to regular Java programs that invoke EMonitor class libraries. It is very suitable to replace the Java monitor with the EMonitor when developing elaborate concurrent objects or high-contention concurrent systems.

Description

Keywords

Citation

Endorsement

Review

Supplemented By

Referenced By