Documentation ¶
Index ¶
- Variables
- type Multiplex
- type Stream
- func (s *Stream) Close() error
- func (s *Stream) Name() string
- func (s *Stream) Read(b []byte) (int, error)
- func (s *Stream) Reset() error
- func (s *Stream) SetDeadline(t time.Time) error
- func (s *Stream) SetReadDeadline(t time.Time) error
- func (s *Stream) SetWriteDeadline(t time.Time) error
- func (s *Stream) Write(b []byte) (int, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( NewStreamTimeout = time.Minute ResetStreamTimeout = 2 * time.Minute WriteCoalesceDelay = 100 * time.Microsecond )
View Source
var ( ErrStreamReset = errors.New("stream reset") ErrStreamClosed = errors.New("closed stream") )
View Source
var ErrInvalidState = errors.New("received an unexpected message from the peer")
ErrInvalidState is returned when the other side does something it shouldn't. In this case, we close the connection to be safe.
View Source
var ErrShutdown = errors.New("session shut down")
ErrShutdown is returned when operating on a shutdown session
View Source
var ErrTwoInitiators = errors.New("two initiators")
ErrTwoInitiators is returned when both sides think they're the initiator
View Source
var MaxMessageSize = 1 << 20
View Source
var ReceiveTimeout = 5 * time.Second
Max time to block waiting for a slow reader to read from a stream before resetting it. Preferably, we'd have some form of back-pressure mechanism but we don't have that in this protocol.
Functions ¶
This section is empty.
Types ¶
type Multiplex ¶
type Multiplex struct {
// contains filtered or unexported fields
}
Multiplex is a mplex session.
func NewMultiplex ¶
NewMultiplex creates a new multiplexer session.
func (*Multiplex) NewNamedStream ¶
NewNamedStream creates a new named stream.
Click to show internal directories.
Click to hide internal directories.