]> Cypherpunks repositories - gostls13.git/commitdiff
net/rpc: document thread safety requirements of codec types.
authorHan-Wen Nienhuys <hanwen@google.com>
Thu, 12 Sep 2013 12:03:53 +0000 (22:03 +1000)
committerRob Pike <r@golang.org>
Thu, 12 Sep 2013 12:03:53 +0000 (22:03 +1000)
Fixes #6306.

R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/13474043

src/pkg/net/rpc/client.go
src/pkg/net/rpc/server.go

index 4b0c9c3bba20efcfd4f8bc22d790e71cafa5c90b..608894fb0d6fe55eca35609a8570ffeea48f270f 100644 (file)
@@ -58,6 +58,7 @@ type Client struct {
 // argument to force the body of the response to be read and then
 // discarded.
 type ClientCodec interface {
+       // WriteRequest must be safe for concurrent use by multiple goroutines.
        WriteRequest(*Request, interface{}) error
        ReadResponseHeader(*Response) error
        ReadResponseBody(interface{}) error
index fe1cdde1ad9e2a6cd9014d454e3b31fc5f7fb55d..9ccd703b12ebf5b81f0306f6c967d8733fb7962b 100644 (file)
@@ -616,6 +616,7 @@ func RegisterName(name string, rcvr interface{}) error {
 type ServerCodec interface {
        ReadRequestHeader(*Request) error
        ReadRequestBody(interface{}) error
+       // WriteResponse must be safe for concurrent use by multiple goroutines.
        WriteResponse(*Response, interface{}) error
 
        Close() error