This PDF
covers the following topics related to Concurrent Programming in Pharo :
Concurrent programming in Pharo, Studying an example, A simple example, Process,
Process lifetime, Creating processes, First look at ProcessorScheduler, Process
priorities, ProcessScheduler rules, Let us trace better what is happening,
Yielding the computation, Important API, Conclusion Semaphores, Scheduler’s
principles, Some examples of semaphores at work.
This page provides the
book Start Concurrent: A Gentle Introduction to Concurrent Programming by Barry
Wittman that covers the following topics related to Concurrent Programming :
Computer Basics, Problem Solving and Programming, Primitive Types and Strings,
Selection, Repetition, Arrays, Simple Graphical User Interfaces, Methods,
Classes, Interfaces, Inheritance, Exceptions, Concurrent Programming,
Synchronization, Constructing Graphical User Interfaces, Testing and Debugging,
Polymorphism, Dynamic Data Structures, Recursion, File I/O, Network
Communication.
This PDF covers the following
topics related to Concurrent Programming : On Concurrent Programming, Hello
World!, The Problem of Concurrent Programming, The Harmony Virtual Machine,
Critical Sections, Peterson’s Algorithm, Harmony Methods and Pointers,
Specification, Spinlock, Lock Implementations, Concurrent Data Structures,
Fine-Grained Locking, Testing: Checking Behaviors, Debugging, Conditional
Waiting, Reader/Writer Locks, Bounded Buffer, Split Binary Semaphores,
Starvation, Monitors, Deadlock, Actors and Message Passing, Barrier
Synchronization, Interrupts, Non-Blocking Synchronization, Alternating Bit
Protocol, Leader Election, Transactions and Two Phase Commit, Chain Replication,
Working with Actions, Replicated Atomic Read/Write Register, Distributed
Consensus, Paxos, Needham-Schroeder Authentication Protocol.
This note is largely
concerned with explicit concurrency, where concurrent behavior is specified by
the program designer. It also includes a brief introduction to
performance-oriented concurrency, where concurrency is used to improve program
performance by taking advantage of hardware support for parallel processing.
Topics covered includes: Nature of Concurrent Programs, Problems in Concurrent
Programs, Properties of Concurrent Programs, Executing Concurrent Programs,
Program Construction and Common Applications.