Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Avoid deadlocks #1

Open
vkvam opened this issue Dec 11, 2019 · 3 comments
Open

Avoid deadlocks #1

vkvam opened this issue Dec 11, 2019 · 3 comments
Labels
enhancement New feature or request
Milestone

Comments

@vkvam
Copy link
Owner

vkvam commented Dec 11, 2019

Generalise some mechanism to shut down all threads when one thread/process fails.

@vkvam vkvam added this to the Beta milestone Dec 11, 2019
@vkvam vkvam added bug Something isn't working enhancement New feature or request and removed bug Something isn't working labels Dec 12, 2019
@vkvam
Copy link
Owner Author

vkvam commented Dec 16, 2019

Brute force could by a keep-alive signal back from pipeline while running everything in a Process.

@vkvam
Copy link
Owner Author

vkvam commented Jan 8, 2020

All threads are now wrapped in a FileGeneratorResponse, allowing something other than the FileGenerator itself to start/observe/join threads.

@vkvam
Copy link
Owner Author

vkvam commented Jan 9, 2020

One remaining problem to overcome is that it will be impossible for a thread to trigger an exception on the main thread while the main thread is locked in a read() call.

An option could be to wrap the read() call with a queue that requests results from a child thread doing the actual read call.

The read call (on the main thread), could periodically check for exceptions on any thread and raise them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant