1
0
mirror of https://github.com/golang/go synced 2024-11-18 18:14:43 -07:00
go/internal/jsonrpc2
Ian Cottrell 94339b8328 internal/jsonrpc2: change to a more synchronous dispatch model
Delivering each message in a go routine turned out to be problematic, there are some messages
that must be fully processed before later messages are started, and there was no way to guarantee that.
We now push concurrence handling up to the higher level, this has the disadvantage of not being able to guarantee
we respond to call messages correctly, but its a small price to pay.
The LSP currently processes each message fully in order blocking the handler, while we still work on basic
functionality.

Change-Id: If0648c77713ddbe4fed69da97a57696f433b8002
Reviewed-on: https://go-review.googlesource.com/c/149497
Run-TryBot: Ian Cottrell <iancottrell@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2018-11-14 19:09:51 +00:00
..
jsonrpc2_test.go internal/jsonrpc2: change to a more synchronous dispatch model 2018-11-14 19:09:51 +00:00
jsonrpc2.go internal/jsonrpc2: change to a more synchronous dispatch model 2018-11-14 19:09:51 +00:00
log.go cmd/golsp: format logging for the lsp inspector 2018-11-02 22:32:51 +00:00
stream.go internal/jsonrpc2: a basic json rpc library to build an lsp on top of 2018-09-24 17:56:01 +00:00
wire.go cmd/golsp: format logging for the lsp inspector 2018-11-02 22:32:51 +00:00