10 Concurrency and Parallelism

Racket supports multiple threads of control within a program, thread-local storage, some primitive synchronization mechanisms, and a framework for composing synchronization abstractions. In addition, the racket/future and racket/place libraries provide support for parallelism to improve performance.

    10.1 Threads

      10.1.1 Creating Threads

      10.1.2 Suspending, Resuming, and Killing Threads

      10.1.3 Synchronizing Thread State

      10.1.4 Thread Mailboxes

    10.2 Synchronization

      10.2.1 Events

      10.2.2 Channels

      10.2.3 Semaphores

      10.2.4 Buffered Asynchronous Channels

    10.3 Thread-Local Storage

      10.3.1 Thread Cells

      10.3.2 Parameters

    10.4 Futures

      10.4.1 Future Performance Logging

    10.5 Places