-
-
Notifications
You must be signed in to change notification settings - Fork 862
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
[Discussion] drop 25.x support #1668
Comments
I thought I'd mention that there seems to be problems with Emacs lisp threads; See the third paragraph in this article. Now I have no idea if these problems remain in 27.x (that would still be a problem for 26.x), but if that is the case, it may be detrimental to the stability of |
The problem(which is by design ftr) is still here - we are going to use it for background tasks and use thread-yield in the task so instead of locking emacs for 1-2 seconds emacs will be able to respond to keyboard events. |
If I understand correctly, Emacs only allow one thread run at a time, once you yield the thread, it will no longer proceeding, which kind of background tasks can you use for that? |
@kiennq check this - yyoncho@a5facf7 |
So you yield the thread immediately after running it so that it will be run later and can be resumed at specific points? |
This part might change, the code is POC.
If it works I am fine - can you provide a prototype?
We might use one worker thread. But more concerning is:
|
Let me try some prototype for that. Since Emacs is basically single thread, maybe even with data races problem pointed by TSan, it's still good to use now, who knows 😄 |
Can watchman be used for file watching? Maybe only if it's available on the system. |
Probably, someone has to investigate that. |
Add one more comment to this, I surprise that this works and non-blocking (make-thread (lambda ()
(url-copy-file "https://speed.hetzner.de/100MB.bin" "~/tmp/a.tmp")
(message "done!"))) Always thought that without yielding, the message will never be output. |
Opening the discussion. I am now investigating whether threads could be used to improve lsp-mode responsiveness in certain cases(e. g. file watches).
The text was updated successfully, but these errors were encountered: