Commit Graph

8 Commits

Author SHA1 Message Date
Steven Scott b378caee5b Add write buffer pooling
Add WriteBufferPool to Dialer and Upgrader. This field specifies a pool
to use for write operations on a connection.  Use of the pool can reduce
memory use when there is a modest write volume over a large number of
connections.

Use larger of hijacked buffer and buffer allocated for connection (if
any) as buffer for building handshake response. This decreases possible
allocations when building the handshake response.

Modify bufio reuse test to call Upgrade instead of the internal
newConnBRW. Move the test from conn_test.go to server_test.go because
it's a serer test.

Update newConn and newConnBRW:

- Move the bufio "hacks" from newConnBRW to separate functions and call
these functions directly from Upgrade.
- Rename newConn to newTestConn and move to conn_test.go. Shorten
argument list to common use case.
- Rename newConnBRW to newConn.
- Add pool code to newConn.
2018-08-22 14:11:59 -07:00
Gary Burd b6ab76f1fe Provide all close frame data to application
- Export closeError.
- Do not convert normal closure and going away to io.EOF.
2015-08-11 10:14:32 -07:00
Gary Burd 2dbddebb82 Improve the errors returned from ReadJSON.
The JSON decoder returns io.EOF when a message is empty or all
whitespace. Convert io.EOF return values from the JSON decoder to
io.ErrUnexpectedEOF so that applications can distinguish between an
error reading the JSON value and the connection closing.
2015-03-09 12:10:02 -07:00
Gary Burd 15aed3b4a4 Relicense to the Gorilla WebSocket Authors. 2014-04-18 14:25:11 -07:00
Craig Jackson bc7ffd7c1e Fix test for deprecated JSON funcs. 2013-10-27 18:33:40 -07:00
Craig Jackson 3d66655aaa Added WriteJSON/ReadJSON deprecated methods for backwards compatibility. 2013-10-27 18:27:32 -07:00
Craig Jackson 8e0dcebbf0 Use WriteJSON and ReadJSON on Conn struct. 2013-10-27 18:27:31 -07:00
Gary Burd 273ecadfca Initial commit 2013-10-16 16:30:59 -07:00