Documentation ¶
Index ¶
- Constants
- Variables
- func NewFakeConn(node fatchoy.NodeID, addr string) fatchoy.Endpoint
- func ReadLenMessage(conn net.Conn, msg proto.Message) error
- func ReadProtoMessage(conn net.Conn, enc codec.Encoder, decrypt cipher.BlockCryptor, ...) error
- func RequestLenMessage(conn net.Conn, req, ack proto.Message) error
- func RequestProtoMessage(conn net.Conn, enc codec.Encoder, command int32, req, resp proto.Message) error
- func SendProtoMessage(conn io.Writer, enc codec.Encoder, encrypt cipher.BlockCryptor, command int32, ...) error
- func WriteLenMessage(conn net.Conn, msg proto.Message) error
- type Buffer
- func (b *Buffer) PeekBool() bool
- func (b *Buffer) PeekFloat32() float32
- func (b *Buffer) PeekFloat64() float64
- func (b *Buffer) PeekInt() int
- func (b *Buffer) PeekInt16() int16
- func (b *Buffer) PeekInt32() int32
- func (b *Buffer) PeekInt64() int64
- func (b *Buffer) PeekInt8() int8
- func (b *Buffer) PeekUint() uint
- func (b *Buffer) PeekUint16() uint16
- func (b *Buffer) PeekUint32() uint32
- func (b *Buffer) PeekUint64() uint64
- func (b *Buffer) PeekUint8() uint8
- func (b *Buffer) ReadBool() bool
- func (b *Buffer) ReadFloat32() float32
- func (b *Buffer) ReadFloat64() float64
- func (b *Buffer) ReadInt() int
- func (b *Buffer) ReadInt16() int16
- func (b *Buffer) ReadInt32() int32
- func (b *Buffer) ReadInt64() int64
- func (b *Buffer) ReadInt8() int8
- func (b *Buffer) ReadUint() uint
- func (b *Buffer) ReadUint16() uint16
- func (b *Buffer) ReadUint32() uint32
- func (b *Buffer) ReadUint64() uint64
- func (b *Buffer) ReadUint8() uint8
- func (b *Buffer) WriteBool(v bool)
- func (b *Buffer) WriteFloat32(f float32)
- func (b *Buffer) WriteFloat64(f float64)
- func (b *Buffer) WriteInt(n int)
- func (b *Buffer) WriteInt16(n int16)
- func (b *Buffer) WriteInt32(n int32)
- func (b *Buffer) WriteInt64(n int64)
- func (b *Buffer) WriteInt8(n int8)
- func (b *Buffer) WriteUInt8(n uint8)
- func (b *Buffer) WriteUint(n uint)
- func (b *Buffer) WriteUint16(n uint16)
- func (b *Buffer) WriteUint32(n uint32)
- func (b *Buffer) WriteUint64(n uint64)
- type Error
- type FakeConn
- type RpcClient
- func (c *RpcClient) AsyncCall(node fatchoy.NodeID, req proto.Message, cb RpcHandler) error
- func (c *RpcClient) Call(node fatchoy.NodeID, req proto.Message) *RpcContext
- func (c *RpcClient) Dispatch(pkt fatchoy.IPacket) error
- func (c *RpcClient) Go()
- func (c *RpcClient) PendingQueue() <-chan fatchoy.IPacket
- func (c *RpcClient) ReapTimeout() int
- type RpcContext
- type RpcHandler
- type StreamConn
- func (c *StreamConn) Init(node fatchoy.NodeID, enc codec.Encoder, inbound chan<- fatchoy.IPacket, ...)
- func (c *StreamConn) IsRunning() bool
- func (c *StreamConn) NodeID() fatchoy.NodeID
- func (c *StreamConn) RemoteAddr() string
- func (c *StreamConn) SetEncryptPair(encrypt cipher.BlockCryptor, decrypt cipher.BlockCryptor)
- func (c *StreamConn) SetNodeID(node fatchoy.NodeID)
- func (c *StreamConn) SetRemoteAddr(addr string)
- func (c *StreamConn) SetUserData(ud interface{})
- func (c *StreamConn) Stats() *stats.Stats
- func (c *StreamConn) UserData() interface{}
- type TcpConn
- type TcpServer
Constants ¶
View Source
const ( StatBytesRecv int = iota // bytes received StatBytesSent // bytes sent StatPacketsRecv // packets received StatPacketsSent // packets sent NumStat )
Variables ¶
View Source
var ( ErrConnIsClosing = errors.New("connection is closing when sending") ErrConnOutboundOverflow = errors.New("connection outbound queue overflow") ErrConnForceClose = errors.New("connection forced to close") )
View Source
var ErrBufferOutOfRange = errors.New("buffer out of range")
View Source
var (
RequestReadTimeout = 100 // 默认read超时时间,100s
)
View Source
var (
TConnReadTimeout = 200
)
Functions ¶
func ReadLenMessage ¶ added in v0.1.5
读取2字节开头的message
func ReadProtoMessage ¶ added in v0.1.12
func ReadProtoMessage(conn net.Conn, enc codec.Encoder, decrypt cipher.BlockCryptor, pkt fatchoy.IPacket, msg proto.Message) error
读取一条消息
func RequestLenMessage ¶ added in v0.1.5
写入req并且等待读取ack
func RequestProtoMessage ¶ added in v0.1.12
func RequestProtoMessage(conn net.Conn, enc codec.Encoder, command int32, req, resp proto.Message) error
send并且立即等待recv(不加密)
Types ¶
type Buffer ¶
func (*Buffer) PeekFloat32 ¶
func (*Buffer) PeekFloat64 ¶
func (*Buffer) PeekUint16 ¶
func (*Buffer) PeekUint32 ¶
func (*Buffer) PeekUint64 ¶
func (*Buffer) ReadFloat32 ¶
func (*Buffer) ReadFloat64 ¶
func (*Buffer) ReadUint16 ¶
func (*Buffer) ReadUint32 ¶
func (*Buffer) ReadUint64 ¶
func (*Buffer) WriteFloat32 ¶
func (*Buffer) WriteFloat64 ¶
func (*Buffer) WriteInt16 ¶
func (*Buffer) WriteInt32 ¶
func (*Buffer) WriteInt64 ¶
func (*Buffer) WriteUInt8 ¶
func (*Buffer) WriteUint16 ¶
func (*Buffer) WriteUint32 ¶
func (*Buffer) WriteUint64 ¶
type FakeConn ¶
type FakeConn struct {
StreamConn
}
a fake endpoint
func (*FakeConn) ForceClose ¶
func (*FakeConn) Go ¶
func (c *FakeConn) Go(flag fatchoy.EndpointFlag)
type RpcClient ¶ added in v0.1.5
type RpcClient struct {
// contains filtered or unexported fields
}
RPC调用client
func NewRpcClient ¶ added in v0.1.5
func (*RpcClient) PendingQueue ¶ added in v0.1.5
func (*RpcClient) ReapTimeout ¶ added in v0.1.5
type RpcContext ¶ added in v0.1.5
type RpcContext struct {
// contains filtered or unexported fields
}
RPC上下文
func NewRpcContext ¶ added in v0.1.5
func NewRpcContext(node fatchoy.NodeID, req proto.Message, cb RpcHandler) *RpcContext
type StreamConn ¶
type StreamConn struct {
// contains filtered or unexported fields
}
stream connection
func (*StreamConn) IsRunning ¶ added in v0.1.20
func (c *StreamConn) IsRunning() bool
func (*StreamConn) NodeID ¶
func (c *StreamConn) NodeID() fatchoy.NodeID
func (*StreamConn) RemoteAddr ¶
func (c *StreamConn) RemoteAddr() string
func (*StreamConn) SetEncryptPair ¶
func (c *StreamConn) SetEncryptPair(encrypt cipher.BlockCryptor, decrypt cipher.BlockCryptor)
func (*StreamConn) SetNodeID ¶
func (c *StreamConn) SetNodeID(node fatchoy.NodeID)
func (*StreamConn) SetRemoteAddr ¶
func (c *StreamConn) SetRemoteAddr(addr string)
func (*StreamConn) SetUserData ¶
func (c *StreamConn) SetUserData(ud interface{})
func (*StreamConn) Stats ¶
func (c *StreamConn) Stats() *stats.Stats
func (*StreamConn) UserData ¶
func (c *StreamConn) UserData() interface{}
type TcpConn ¶
type TcpConn struct { StreamConn // contains filtered or unexported fields }
TCP connection
func NewTcpConn ¶
func (*TcpConn) ForceClose ¶
func (*TcpConn) Go ¶
func (t *TcpConn) Go(flag fatchoy.EndpointFlag)
func (*TcpConn) OutboundQueue ¶
type TcpServer ¶
type TcpServer struct {
// contains filtered or unexported fields
}
func NewTcpServer ¶
func (*TcpServer) BacklogChan ¶
Click to show internal directories.
Click to hide internal directories.