Skip to content

TaskMan v0.1.12

Choose a tag to compare

@aufkrawall aufkrawall released this 18 Sep 22:46

A reliability, performance, and responsiveness release: authoritative zombie process eviction without sampler freezes, cycle-safe PPID hierarchy walking, false-positive elimination for "Not responding" status on background games, restored action toast TTL with a "Clear all" stack action, low-latency WH_KEYBOARD_LL hotkey hook handling, and truthful GPU driver version reporting.

Process Sampler & Hierarchy Reliability

  • Authoritative kernel process table liveness & zombie eviction. Switched process liveness validation to NtQuerySystemInformation(SystemProcessInformation) matching native Task Manager. Zombie processes lingering in teardown with external handles are cleanly evicted without triggering per-tick sysinfo re-enumerations that previously froze the sampler thread at 100% CPU. Handle releases are rate-limited and stale kernel tables are safely guarded.
  • Cycle-safe parent-PID hierarchy walks. Protected ancestor walks in refine_categories_and_group_apps against cyclic parent PID loops caused by PID reuse or spoofing, preventing app-root infinite loops.

Hang Detection & Status Accuracy

  • Sustained hang requirement for "Not responding". IsHungAppWindow is an edge trigger that trips whenever a message pump takes longer than 5 seconds. TaskMan now requires the unresponsive state to hold continuously for a 10-second grace period before marking the process as "Not responding", eliminating false warnings on background or throttled games.
  • Accurate GPU driver reporting. Adapters lacking a user-mode driver now truthfully report unavailable ("—") rather than fabricating a "0.0.0.0" version.

Action Feedback & Toasts

  • Toast auto-expiration & "Clear all". Restored a 30-second time-to-live with a smooth 600 ms fade-out for action toasts while retaining the manual close (x) button. When multiple toasts accumulate, a convenient "Clear all" button clears the entire stack.

System Hotkey Interception

  • Ultra-low latency keyboard hook. Elevated hook thread priority, moved window activation onto a background worker, and converted debounce tracking to lock-free atomics, bringing hook callback latency under 1 microsecond. Fixed hook uninstallation order to prevent worker event teardown races.

Startup Apps & Stability

  • Startup toggle dispatch fix. Resolved worker thread lock contention when toggling startup applications by capturing target details at dispatch.
  • Isolated crash dump unit testing. MiniDump test cases now run against an isolated child process, preventing loader/MUI lock deadlocks during parallel test runs.

Verifying a download

Each archive ships a .sha256 checksum file beside it:

sha256sum -c taskman-v0.1.12-windows-x86_64.zip.sha256

Full changelog: v0.1.11...v0.1.12