Skip to content

Perf: move Lite sub-tab refreshes off the UI thread (P1b)#1111

Merged
erikdarlingdata merged 1 commit into
devfrom
feature/perf-lite-offthread2
Jun 11, 2026
Merged

Perf: move Lite sub-tab refreshes off the UI thread (P1b)#1111
erikdarlingdata merged 1 commit into
devfrom
feature/perf-lite-offthread2

Conversation

@erikdarlingdata

Copy link
Copy Markdown
Owner

Continues the Lite off-thread work (P1b). Wraps every _dataService.Get*Async call in the per-sub-tab refresh methods + the blocking/deadlock slicer loaders in Task.Run, so the 60s-timer steady-state refresh and tab-switch refresh run their DuckDB queries on pool threads instead of the WPF dispatcher (correct ReaderWriterLockSlim affinity — each query acquires+releases its read lock within one synchronous run). UI-update code unchanged.

Build: Lite builds clean (net10).

Still on this effort: picker charts, drill-down, slicer-change handlers, grid selection, connect, status timer, timeline lanes, then a bounded read lock; then shared-UI crosshair, the Dashboard chunk, the leak cluster.

Threading change — validate on a running Lite.

🤖 Generated with Claude Code

Continues the Lite off-thread work. Wraps every _dataService.Get*Async call in
the per-sub-tab refresh methods (RefreshWaitStats/Cpu/FileIo/TempDb/Perfmon/
RunningJobs/Configuration/DailySummary/CollectionHealth, and the switch-based
Queries/Memory/Blocking) plus the blocking/deadlock slicer loaders in Task.Run,
so the 60s-timer steady-state refresh and tab-switch refresh run their DuckDB
queries on pool threads instead of the dispatcher. Each query's read lock is
acquired+released within one synchronous run (ReaderWriterLockSlim affinity
holds); UI-update code after the awaits is unchanged.

Build: Lite builds clean (net10).

Still on this effort: picker charts, drill-down, slicer-change handlers, grid
selection, connect, status timer, timeline lanes, then a bounded read lock; then
the shared-UI crosshair, the Dashboard chunk, and the leak cluster.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@erikdarlingdata erikdarlingdata merged commit 54ee665 into dev Jun 11, 2026
@erikdarlingdata erikdarlingdata deleted the feature/perf-lite-offthread2 branch June 11, 2026 20:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant