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

Make connect and shutdown asynchronous #22

Closed
zbelial opened this issue Jan 8, 2024 · 4 comments
Closed

Make connect and shutdown asynchronous #22

zbelial opened this issue Jan 8, 2024 · 4 comments

Comments

@zbelial
Copy link
Owner

zbelial commented Jan 8, 2024

An issue reported Here

@zbelial
Copy link
Owner Author

zbelial commented Jan 18, 2024

Made shutdown asynchronous in c14f095

@zbelial
Copy link
Owner Author

zbelial commented Jan 18, 2024

It seems that asynchronous connect makes no sense in lspce, since lspce has to be waiting until lsp server is initialized to send didOpen notification.

@lynnux 我尝试着将connect改成异步时,发现在lspce实现异步connect好像意义不大(以我目前对Emacs module的理解,也没法实现像eglot里那样的异步处理),因为在一个buffer里启用lspce mode时,lspce要等待server初始化完然后发送didOpen给server。如果connect改成异步,lspce的elisp代码还是要不断查询server状态,等server准备好了去发didOpen。

@lynnux
Copy link

lynnux commented Jan 19, 2024

嗯嗯,可以的。我上班这台机子在排除connect卡死后就没有卡死情况了,shutdown也没卡过。

@zbelial
Copy link
Owner Author

zbelial commented Jan 19, 2024

嗯嗯,可以的。我上班这台机子在排除connect卡死后就没有卡死情况了,shutdown也没卡过。

在dev分支上把shutdown改成异步的了,另外还加了个限制诊断信息数量的新特性(昨天找了个文件测试ts+deno,将近两千个诊断信息,Emacs卡到没法用),有需要的话可以切到dev尝试一下。

@zbelial zbelial closed this as completed Jan 19, 2024
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

No branches or pull requests

2 participants