A Language for Multi-threaded Active Objects

Ludovic Henrio 1 Fabrice Huet 1 Zsolt István 2
1 OASIS - Active objects, semantics, Internet and security
CRISAM - Inria Sophia Antipolis - Méditerranée , COMRED - COMmunications, Réseaux, systèmes Embarqués et Distribués
Abstract : 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.
Type de document :
[Research Report] RR-8021, INRIA. 2012

Contributeur : Ludovic Henrio <>
Soumis le : vendredi 15 février 2013 - 16:27:10
Dernière modification le : samedi 17 septembre 2016 - 01:35:55


Fichiers produits par l'(les) auteur(s)


  • HAL Id : hal-00720012, version 2



Ludovic Henrio, Fabrice Huet, Zsolt István. A Language for Multi-threaded Active Objects. [Research Report] RR-8021, INRIA. 2012. <hal-00720012v2>



Consultations de
la notice


Téléchargements du document