Concurrency is the concept of simultaneous execution of computational tasks.
See Also edit
- actor model using coroutines
- asynchronous methods
- distributed computation
- [parallel processing]
- grid services
Building Blocks edit
- continuation
- message passing
- semaphores
- [microthreads]
- lockfiles
Entities edit
In a concurrent system, autonomous or semi-autonomous entities communicate to achieve the objectives of the system. Depending on the design, and entity may be called an
actor,
agent,
object,
producer,
process, or
routine. Here is a list of Tcl facilities and components that can be used to implement entities.
- coroutines
- generators
- iterators
- interp
- Each interpreter serves as an independent routine
- processes
- threads
Models and Paradigms edit
- communicating sequential processes
- A formal language for describing patterns of interaction in concurrent systems.
- flow-based programming
- event-driven programming
Systems in Tcl edit
The following Tcl systems provision concurrent routines, along with facilities for communication between them. See also
message passing for a list of systems that only distribute data.
- csp (package)
- Daerth
- Control minions of asynchronous threaded pipelined backpressure-mediated death stations.
- fiber
- Gotcl
- pipethread
See Also edit
- Concurrency, Wikipedia
- Concurrency for grown-ups by Cameron Laird, developerWorks, 2002-08-15
- Introduction to Multithreading, Superthreading and Hyperthreading, by Jon Stokes
- claims to be mostly about (rather specific) hardware, in fact its readability and confident accuracy recommend it for those in search of a more general introduction to operating system-level concurrency.
- Concurrency in Tcl: Events without getting Twisted, Andreas Kupries, 2010-05-06
- Concurreny in Tcl: Weaving Threads, Andreas Kupries, 2010-05-10
- Concurrency in Tcl: Talking Heads, Andreas Kupries, 2010-06-03
Description edit
Tclonians typically focus on maintainability and related development issues. For a hard-core performance perspective on concurrency, see
The C10K Problem.