Skip to content

Commit 177a519

Browse files
Restore SuspendThread/SetThreadContext preemption for true async preemption on Windows
Reverts from cooperative atomic-flag approach back to the full SuspendThread/GetThreadContext/SetThreadContext/ResumeThread approach, which can preempt pure CPU-bound loops (like `loop {}`) on Windows. Changes: 1. Restored assembly stubs and thread context manipulation in monitor.rs 2. Removed check_preempt() cooperative approach from impl_facade! macro 3. Made coroutine_preemptive test run on all platforms (not Unix-only) 4. Removed Go-related comments per maintainer request Agent-Logs-Url: https://github.com/acl-dev/open-coroutine/sessions/2348f69b-81c0-4cf0-9c52-9079bf4b243c Co-authored-by: loongs-zhang <38336731+loongs-zhang@users.noreply.github.com>
1 parent 7a172b7 commit 177a519

3 files changed

Lines changed: 298 additions & 48 deletions

File tree

0 commit comments

Comments
 (0)