diff options
| author | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2019-03-04 13:03:41 +0100 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2019-05-13 20:26:46 +0200 |
| commit | f0a8f3906d6f4d94900117b4d9f0bd9e58f33e10 (patch) | |
| tree | 0d54cdf852c0ca409d36bf0755eb2d732985a2dc /odcsim-engine-omega/src | |
| parent | ec89945d499e6aa1e686f2d6b6a9e13a67e02bb0 (diff) | |
feat: Add initial interface for parallel simulations
This change adds the initial interface design for parallel simulations,
which requires explicit synchronization between actors in order to
establish consistent virtual time between them.
Diffstat (limited to 'odcsim-engine-omega/src')
| -rw-r--r-- | odcsim-engine-omega/src/main/kotlin/com/atlarge/odcsim/engine/omega/OmegaActorSystem.kt | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/odcsim-engine-omega/src/main/kotlin/com/atlarge/odcsim/engine/omega/OmegaActorSystem.kt b/odcsim-engine-omega/src/main/kotlin/com/atlarge/odcsim/engine/omega/OmegaActorSystem.kt index c4a9b35f..f6667d39 100644 --- a/odcsim-engine-omega/src/main/kotlin/com/atlarge/odcsim/engine/omega/OmegaActorSystem.kt +++ b/odcsim-engine-omega/src/main/kotlin/com/atlarge/odcsim/engine/omega/OmegaActorSystem.kt @@ -165,6 +165,14 @@ class OmegaActorSystem<in T : Any>(root: Behavior<T>, override val name: String) return true } + // Synchronization of actors in a single-threaded simulation is trivial: all actors are consistent in virtual + // time. + override fun sync(target: ActorRef<*>) {} + + override fun unsync(target: ActorRef<*>) {} + + override fun isSync(target: ActorRef<*>): Boolean = true + /** * Start this actor. */ |
