Copyright | Copyright (c) 2015-2017 David Sorokin <david.sorokin@gmail.com> |
---|---|
License | BSD3 |
Maintainer | David Sorokin <david.sorokin@gmail.com> |
Stability | experimental |
Safe Haskell | None |
Language | Haskell98 |
Tested with: GHC 7.10.3
This module allows running the time server that coordinates the global simulation time.
- data TimeServerParams = TimeServerParams {}
- data TimeServerStrategy
- defaultTimeServerParams :: TimeServerParams
- timeServer :: Int -> TimeServerParams -> Process ()
- curryTimeServer :: (Int, TimeServerParams) -> Process ()
Documentation
data TimeServerParams Source #
The time server parameters.
TimeServerParams | |
|
data TimeServerStrategy Source #
The time server strategy.
WaitIndefinitelyForLogicalProcess | wait for the logical process forever |
TerminateDueToLogicalProcessTimeout Int | terminate the server due to the exceeded logical process timeout in microseconds,
but not less than |
UnregisterLogicalProcessDueToTimeout Int | unregister the logical process due to the exceeded timeout in microseconds,
but not less than |
defaultTimeServerParams :: TimeServerParams Source #
The default time server parameters.
timeServer :: Int -> TimeServerParams -> Process () Source #
Start the time server by the specified initial quorum and parameters. The quorum defines the number of logical processes that must be registered in the time server before the global time synchronization is started.
curryTimeServer :: (Int, TimeServerParams) -> Process () Source #
A curried version of timeServer
for starting the time server on remote node.