Title
Tanks: multiple reader, single writer actors
Abstract
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.
Year
DOI
Venue
2013
10.1145/2541329.2541331
AGERE!@SPLASH
Keywords
Field
DocType
application developer,single writer actor,concurrent updates,tank model,facilitates concurrent programming,multiple reader,high level synchronization mechanism,consistent version,liveness guarantee,event-loops actor model,race condition,actor model,synchronisation
Synchronization,Computer science,Deadlock,Real-time computing,Concurrent computing,Actor model,Actor model and process calculi,Multi-core processor,Distributed computing,Liveness,Expressivity
Conference
Citations 
PageRank 
References 
4
0.47
12
Authors
4
Name
Order
Citations
PageRank
Joeri De Koster1338.78
Stefan Marr212421.54
Theo D'Hondt361859.24
Tom Van Cutsem445329.70