forked from 1b-agent/opencadstudio-upstream
feat(diag): UI-thread hang watchdog with minidump capture (#120)
The Windows freeze in #120 never reproduces locally and a hung app prints nothing, so terminal runs and logs came back empty. A watchdog thread now watches a heartbeat the UI thread bumps on every processed message (plus a 5 s liveness timer); 25 s of silence writes a minidump with every thread's stack to %LOCALAPPDATA%\OpenCADStudio plus a note telling the reporter to attach it to the issue. One dump per run, armed only after the first beat, suspend-aware, OCS_NO_WATCHDOG=1 disables. Windows-only; windows-sys gains the Debug/Threading binding features (no new crates). Co-Authored-By: Claude Fable 5 <[email protected]>
This commit is contained in:
1 parent
805da6428a
commit
b3decf45ec
7 files changed
+172
-1
No files matched your search
+1
-1
@@ -86,7 +86,7 @@ lyon_tessellation = "1.0.20"
|
||||
# (IApplicationAssociationRegistrationUI dialog).
|
||||
# Win32_System_Registry — HKCU registration that lists the app under
|
||||
# "Open with" for the portable .exe.
|
||||
windows-sys = { version = "0.61", features = ["Win32_UI_Shell", "Win32_UI_WindowsAndMessaging", "Win32_System_Com", "Win32_System_Registry", "Win32_Foundation"] }
|
||||
windows-sys = { version = "0.61", features = ["Win32_UI_Shell", "Win32_UI_WindowsAndMessaging", "Win32_System_Com", "Win32_System_Registry", "Win32_Foundation", "Win32_System_Diagnostics_Debug", "Win32_System_Threading", "Win32_Storage_FileSystem", "Win32_System_Kernel", "Win32_System_Memory"] }
|
||||
|
||||
[patch.crates-io]
|
||||
# The `acadrust` crate now tracks the OpenAEC-Foundation/acadifc fork's main
|
||||
|
||||
Reference in new issue
Block a user