Commit 9c8b9cb
committed
Final version including:
1. All past blocking points are resolved.
2. Atomicity,
+ Implementation and rebuild Semlock are atomic (protected via the dedicated semaphore),
+ Release, get_value and is_zero methods are atomic too (protected via the mutex of each semaphore),
+ Acquire function is nearly-atomic.
3. Shared memory,
+ The shared memory and its associated semphore have unique names based on
the main process ID.
+ a new counter was added to count pending thread
when blocking acquire operations happen.
+ When a Semlock is destroyed, the shared memory and its dediocted semaphore are destroyed too
if there is no more opened Semclock.1 parent b446eff commit 9c8b9cb
13 files changed
Lines changed: 640 additions & 849 deletions
File tree
- Lib/multiprocessing
- Misc/NEWS.d/next/macOS
- Modules/_multiprocessing
- clinic
- dump_shm_macosx
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
204 | 210 | | |
205 | 211 | | |
206 | 212 | | |
| |||
245 | 251 | | |
246 | 252 | | |
247 | 253 | | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
248 | 266 | | |
249 | 267 | | |
250 | 268 | | |
| |||
Lines changed: 4 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 0 additions & 102 deletions
This file was deleted.
This file was deleted.
This file was deleted.
Lines changed: 0 additions & 81 deletions
This file was deleted.
0 commit comments