Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork34.1k
Commit4ae0149
Before, it was possible to get the following sequence ofevents (especially on Windows, where the C-level signal handler forSIGINT is run in a separate thread):- SIGINT arrives- trip_signal is called- trip_signal writes to the wakeup fd- the main thread wakes up from select()-or-equivalent- the main thread checks for pending signals, but doesn't see any- the main thread drains the wakeup fd- the main thread goes back to sleep- trip_signal sets is_tripped=1 and calls Py_AddPendingCall to notify the main thread the it should run the Python-level signal handler- the main thread doesn't notice because it's asleepThis has been causing repeated failures in the Trio test suite:python-trio/trio#119
1 parentfca224f commit4ae0149
1 file changed
+26
-7
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
244 | 244 | | |
245 | 245 | | |
246 | 246 | | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
247 | 273 | | |
248 | 274 | | |
249 | 275 | | |
| |||
281 | 307 | | |
282 | 308 | | |
283 | 309 | | |
284 | | - | |
285 | | - | |
286 | | - | |
287 | | - | |
288 | | - | |
289 | | - | |
290 | | - | |
291 | 310 | | |
292 | 311 | | |
293 | 312 | | |
| |||
0 commit comments
Comments
(0)