11 Concurrency and Parallelism

► |  | The Racket Reference

1 | Language Model
2 | Notation for Documentation
3 | Syntactic Forms
4 | Datatypes
5 | Structures
6 | Classes and Objects
7 | Units
8 | Contracts
9 | Pattern Matching
10 | Control Flow
11 | Concurrency and Parallelism
12 | Macros
13 | Input and Output
14 | Reflection and Security
15 | Operating System
16 | Memory Management
17 | Unsafe Operations
18 | Running Racket
| Bibliography
| Index

▼ | 11 | Concurrency and Parallelism

11.1 | Threads
11.2 | Synchronization
11.3 | Thread-Local Storage
11.4 | Futures
11.5 | Places
11.6 | Engines
11.7 | Machine Memory Order

Racket
top contents ← prev up next →

## 11 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.

11.1 Threads
11.1.1 Creating Threads
11.1.2 Suspending, Resuming, and Killing Threads
11.1.3 Synchronizing Thread State
11.1.4 Thread Mailboxes
11.1.5 Parallel Thread Pools
11.2 Synchronization
11.2.1 Events
11.2.2 Channels
11.2.3 Semaphores
11.2.4 Buffered Asynchronous Channels
11.2.4.1 Creating and Using Asynchronous Channels
11.2.4.2 Contracts and Impersonators on Asynchronous Channels
11.3 Thread-Local Storage
11.3.1 Thread Cells
11.3.2 Parameters
11.4 Futures
11.4.1 Creating and Touching Futures
11.4.2 Future Semaphores
11.4.3 Future Performance Logging
11.5 Places
11.5.1 Using Places
11.5.2 Syntactic Support for Using Places
11.5.3 Places Logging
11.6 Engines
11.7 Machine Memory Order

top contents ← prev up next →