标签: visual-studio-code language-server-protocol
我正在使用Language Server Protocol。玩了一段时间之后,我可以看到与语言服务器通信的两种方式,即阻塞套接字和非阻塞套接字。
通过阻塞套接字,我的意思是发送请求并阻塞直到响应。这很容易,但是一旦我在GUI应用程序中使用它,它将阻塞UI。另一个正在使用异步/非阻塞套接字。这有点复杂,可能需要一些回调/事件机制。
现在我的问题是VSCode使用哪种方式与LSP通信?
答案 0 :(得分:1)
许多扩展使用的node language server implementation使用非阻塞通信。您可以找到实现here。它使用nodejs流和net模块
net