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

Improve GUI multithreading #991

Open
gdt opened this issue Jan 26, 2024 · 0 comments
Open

Improve GUI multithreading #991

gdt opened this issue Jan 26, 2024 · 0 comments
Labels
effort-high issue is likely to require >20h of effort, perhaps much more enhancement issue is a request for a feature, and not a defect GUI Issue is about GUI version only impact-low low importance

Comments

@gdt
Copy link
Collaborator

gdt commented Jan 26, 2024

[This is phrased a feature request, but I realize one could see it as a defect.]

The GUI uses cooperative threads, and there are at least two situations where the GUI thread might be starved briefly, leading to poor user interaction and even windowing system complaints. One is fingerprinting large files, and the other is deleting directory trees.

This ticket can be closed when all operations have adequate yield points (straightforward) or the GUI runs in a separate POSIX thread (might need discussion to be sure we have no portability regressions).

Marking impact-low because most people don't see this and absent upset window managers, it doesn't lead to incorrect outcomes.

@gdt gdt added enhancement issue is a request for a feature, and not a defect effort-high issue is likely to require >20h of effort, perhaps much more impact-low low importance GUI Issue is about GUI version only labels Jan 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort-high issue is likely to require >20h of effort, perhaps much more enhancement issue is a request for a feature, and not a defect GUI Issue is about GUI version only impact-low low importance
Projects
None yet
Development

No branches or pull requests

1 participant