Skip to content

fix: process no longer hangs after window close#31

Merged
keyldev merged 1 commit into
mainfrom
fix/shutdown-process-hang
Jun 25, 2026
Merged

fix: process no longer hangs after window close#31
keyldev merged 1 commit into
mainfrom
fix/shutdown-process-hang

Conversation

@keyldev

@keyldev keyldev commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator
  • dispose services on a thread-pool thread, not the dead UI thread
  • avoids deadlock: ConfigureAwait(true) continuations (live grid tiles) posted to the stopped Avalonia dispatcher and never resumed
  • bound disposal to 10s so a wedged native join can't hold the process

Summary

Related

Type

  • Bug fix
  • Feature
  • Refactor / cleanup
  • Docs / CI
  • Other:

Checklist

  • Builds with 0 warnings (TreatWarningsAsErrors=true).
  • Tests pass (dotnet test); new Core logic has unit tests.
  • No layering violation — App references Core only (Infrastructure / Video / Devices wired via DI in a head).
  • Scope stays within one phase (didn't pull work from a later phase's "Не входит").
  • README / docs updated if public commands, options, or setup changed.

Platforms tested

  • Windows
  • Linux
  • macOS
  • Android
  • iOS
  • CI build only

Screenshots / notes

- dispose services on a thread-pool thread, not the dead UI thread
- avoids deadlock: ConfigureAwait(true) continuations (live grid tiles) posted to the stopped Avalonia dispatcher and never resumed
- bound disposal to 10s so a wedged native join can't hold the process
@keyldev keyldev merged commit 8ecd0ae into main Jun 25, 2026
5 checks passed
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