| 621 | } |
| 622 | |
| 623 | static void *diag_thread_fn(void *arg) { |
| 624 | (void)arg; |
| 625 | while (!atomic_load_explicit(&g_diag_stop, memory_order_acquire)) { |
| 626 | write_diagnostics(); |
| 627 | if (!atomic_load_explicit(&g_diag_stop, memory_order_acquire)) { |
| 628 | diag_wait_for_interval(); |
| 629 | } |
| 630 | } |
| 631 | atomic_store_explicit(&g_diag_done, true, memory_order_release); |
| 632 | return NULL; |
| 633 | } |
| 634 | |
| 635 | static void diag_cleanup_live_files(void) { |
| 636 | diag_native_unlink(DIAG_SNAPSHOT_NAME); |
nothing calls this directly
no test coverage detected