| 811 | } |
| 812 | |
| 813 | static bool watcher_windows_wait_complete(atomic_bool *completed, uint64_t deadline_ms) { |
| 814 | while (cbm_now_ms() < deadline_ms) { |
| 815 | if (atomic_load_explicit(completed, memory_order_acquire)) { |
| 816 | return true; |
| 817 | } |
| 818 | cbm_usleep(1000); |
| 819 | } |
| 820 | return atomic_load_explicit(completed, memory_order_acquire); |
| 821 | } |
| 822 | |
| 823 | static bool watcher_windows_wait_process_gone(HANDLE process, uint64_t deadline_ms) { |
| 824 | while (cbm_now_ms() < deadline_ms) { |
no test coverage detected