Skip to content

Conversation

@Kami
Copy link

@Kami Kami commented Jan 24, 2020

Problem Description

Right now when you start the app, two non-daemon / "blocking" threads are started - check ffmpeg and "init casts".

Those two threads "block" the main GUI loop which means if you press CTRL+C / "x" button, application won't exit until those two threads finish.

Init casts thread discovers Chromecasts on the local network which means it can take quite a while to finish and as mentioned above, you can't "gracefully" exit / close the application until it finishes.

Proposed Solution

This pull request fixes that by making those two threads daemon threads.

This means CTRL + C / "x" button will work as expected and the application will exit immediately.

There are also other possible approaches, but this one is the simplest and less invasive with the correct end result.

Kami added 2 commits January 24, 2020 19:53
loop.

Previously, if you pressed CTRL+C or exit before those threads finished
(aka before all the chromecasts were discovered on the local network)
the application would block and only exit when the chromecast
discovery finished.

This pull request fixes that by making those two threads daemon threads.
This way they don't block the main GUI thread, but everything still
works as it should.
thread approach to solve the blocked UI / main thread issue.
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