Concurrent ProgrammingThis book provides a hands-on introduction to concurrent programming principles and techniques. Pascal FC (Functionally Concurrent), a teaching version of the Pascal language available from the authors, is used to illustrate the main techniques used in the concurrency models. Once programmers have grasped the concepts, a smooth transition is made to more advanced theoretical material. |
Common terms and phrases
accept statement active algorithm allocated array begin cobegin begin repeat behaviour boolean buffer BUFFSIZE busy waiting busy-waiting caller calling process channel chapter chopstick client coend end communication concurrent programming concurrent programming languages condition synchronization condition variables conditional critical conditional critical regions consider consumer COUNT critical regions critical section data structure deadlock declaration Dining Philosophers problem embedded systems end end entry example execution export false end flag1 flag2 forever end free objects guarded procedure Hence implementation input instruction integer inter-process communication language model livelock loop message passing mutual exclusion null open1 open2 operations output P-code parameters Pascal Pascal-FC passengers primitives priority problem process type producer programming language queue real-time remote invocation rendezvous request requeue resource resume select statement selective waiting semantics sequential shared variable signal simulation solution terminate alternative timeout trainboarding trainstopping true end tuple space turnstile1 unblocked write