In the past, the Actor Model has mainly been explored in a distributed context. However, more and more application developers are also starting to use it to program shared- memory multicore machines because of the safety guarantees it provides. It avoids issues such as deadlocks and race conditions by construction, and thus facilitates concurrent programming. The tradeoff is that the Actor Model sacrifices expressiveness with respect to accessing shared state because actors are fully isolated from each other (a.k.a. "shared-nothing parallelism"). There is a need for more high level synchronization mechanisms that integrate with the actor model without sacrificing the safety and liveness guarantees it provides. This paper introduces a variation on the communicating event-loops actor model called the TANK model. A tank is an actor that can expose part of its state as a shared read-only resource. The model ensures that any other actor will always observe a consistent version of that state, even in the face of concurrent updates of the actor that owns that state.
Original languageEnglish
Title of host publication3rd International Workshop on Programming based on Actors, Agents, and Decentralized Control
PublisherACM
Pages61-68
Number of pages8
ISBN (Print)978-1-4503-2602-5
Publication statusPublished - Oct 2013
Eventthe 2013 Workshop on Programming Based on Actors, Agents, and Decentralized Control - , United States
Duration: 26 Oct 201331 Oct 2013

Conference

Conferencethe 2013 Workshop on Programming Based on Actors, Agents, and Decentralized Control
CountryUnited States
Period26/10/1331/10/13

    Research areas

  • actors, concurrency control

ID: 2343475