aivika-2.1: A multi-paradigm simulation library

CopyrightCopyright (c) 2009-2014, David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellSafe-Inferred
LanguageHaskell2010

Simulation.Aivika.Processor.RoundRobbin

Description

Tested with: GHC 7.8.3

The module defines the Round-Robbin processor.

Synopsis

Documentation

roundRobbinProcessor :: Processor (Process Double, Process a) a Source

Represents the Round-Robbin processor that tries to perform the task within the specified timeout. If the task times out, then it is canceled and returned to the processor again; otherwise, the successful result is redirected to output.

roundRobbinProcessorUsingIds :: Processor (Process (Double, ProcessId), Process a) a Source

Like roundRobbinProcessor but allows specifying the process identifiers which must be unique for every new attemp to perform the task even if the task is the same.