A Language for Multi-threaded Active Objects

The active object programming model is particularly adapted to easily program distributed objects: it separates objects into several activities, each manipulated by a single thread, preventing data races. However, this programming model has its limitations in terms of expressiveness -- risk of deadlocks -- and of efficiency on multicore machines. To overcome these limitations, this paper presents an extension of the active object model, called multi-active objects, that allows each activity to be multithreaded. The new model is implemented as a Java library and relies on method annotations to decide which requests can be run in parallel. It provides implicit parallelism, sparing the programmer from low-level concurrency mechanisms. We define the operational semantics of the multi-active objects and study the basic properties of this model. The benefits of our proposal are highlighted using two different applications: the NAS Parallel Benchmarks and a peer-to-peer overlay. This report presents the multi-active object programming model, its implementation in Java, its formal semantics and properties, and some experiments showing its efficiency.

Data and Resources

Additional Info

Field Value
Source https://inria.hal.science/hal-00720012
Author Henrio, Ludovic, Huet, Fabrice, István, Zsolt
Maintainer CCSD
Last Updated May 14, 2026, 11:04 (UTC)
Created May 14, 2026, 11:04 (UTC)
Identifier Report N°: RR-8021
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Active objects, semantics, Internet and security (OASIS) ; Centre Inria d'Université Côte d'Azur ; Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-COMmunications, Réseaux, systèmes Embarqués et Distribués (Laboratoire I3S - COMRED) ; Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S) ; Université Nice Sophia Antipolis (1965 - 2019) (UNS)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UniCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UniCA)-Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S) ; Université Nice Sophia Antipolis (1965 - 2019) (UNS)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UniCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UniCA)
creator Henrio, Ludovic
date 2012-07-23T00:00:00
harvest_object_id 95585072-2453-41f6-8d4a-e2110ab8951f
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-10-07T00:00:00
set_spec type:REPORT