Documentation
¶
Index ¶
- Constants
- Variables
- func Debug(msg string, data ...interface{})
- func Dial(network, address string) (net.Conn, error)
- func Error(msg string, data ...interface{})
- func FileWithLineNum() string
- func GetBufferFromPool(size int) []byte
- func Info(msg string, data ...interface{})
- func Listen(network, address string) (net.Listener, error)
- func PutBufferToPool(buffer []byte)
- func SetKcpLogMask(mask int)
- func SetLogLevel(level LogLevel)
- func Warn(msg string, data ...interface{})
- type IConfig
- type IKcp
- func (kcp *IKcp) AckGet(p int) (sn, ts uint32)
- func (kcp *IKcp) AckPush(sn uint32, ts uint32)
- func (kcp *IKcp) Flush()
- func (kcp *IKcp) GetUnusedWnd() uint32
- func (kcp *IKcp) Input(data []byte) error
- func (kcp *IKcp) Interval(interval uint32)
- func (kcp *IKcp) NoDelay(noDelay int32, interval int32, resend int32, nc bool)
- func (kcp *IKcp) Output(data []byte)
- func (kcp *IKcp) ParseAck(sn uint32)
- func (kcp *IKcp) ParseData(newSeg *ISeg)
- func (kcp *IKcp) ParseFastAck(sn uint32, ts uint32)
- func (kcp *IKcp) ParseUna(una uint32)
- func (kcp *IKcp) Peek() (length int)
- func (kcp *IKcp) Recv(buffer []byte, isPeek bool) (n int, err error)
- func (kcp *IKcp) Send(buffer []byte) (sent int, err error)
- func (kcp *IKcp) SetMtu(mtu uint32) error
- func (kcp *IKcp) SetWndSize(sndwnd, rcvwnd uint32)
- func (kcp *IKcp) ShrinkBuf()
- func (kcp *IKcp) Update(current uint32)
- func (kcp *IKcp) UpdateAck(rtt int32)
- func (kcp *IKcp) WaitSnd() int
- type ISeg
- type KcpLogType
- type LogLevel
Constants ¶
View Source
const ( IKCP_RTO_NDL = 30 // no delay min rto IKCP_RTO_MIN = 100 // normal min rto IKCP_RTO_DEF = 200 IKCP_RTO_MAX = 60000 IKCP_CMD_PUSH = 81 // cmd: push data IKCP_CMD_ACK = 82 // cmd: ack IKCP_CMD_WASK = 83 // cmd: window probe (ask) IKCP_CMD_WINS = 84 // cmd: window size (tell) IKCP_ASK_SEND = 1 // need to send IKCP_CMD_WASK IKCP_ASK_TELL = 2 // need to send IKCP_CMD_WINS IKCP_WND_SND = 32 IKCP_WND_RCV = 128 // must >= max fragment size IKCP_MTU_DEF = 1400 IKCP_ACK_FAST = 3 IKCP_INTERVAL = 100 IKCP_OVERHEAD = 24 IKCP_DEADLINK = 20 IKCP_THRESH_INIT = 2 IKCP_THRESH_MIN = 2 IKCP_PROBE_INIT = 7000 // 7 secs to probe window size IKCP_PROBE_LIMIT = 120000 // up to 120 secs to probe window IKCP_FASTACK_LIMIT = 5 // max times to trigger fastack )
View Source
const ( Reset = "\033[0m" Red = "\033[31m" Green = "\033[32m" Yellow = "\033[33m" Blue = "\033[34m" Magenta = "\033[35m" Cyan = "\033[36m" White = "\033[37m" BlueBold = "\033[34;1m" MagentaBold = "\033[35;1m" RedBold = "\033[31;1m" YellowBold = "\033[33;1m" )
Colors
Variables ¶
View Source
var ( ErrorMssInvalid = errors.New("err mss is invalid") ErrorsFragLimit = errors.New("frag over limit") ErrorsInvalidKcpHead = errors.New("invalid kcp head") ErrorsInvalidConv = errors.New("invalid kcp conv") )
View Source
var ( ErrorSegSizeInvalid = errors.New("invalid seg data size") ErrorSegCmdTypeInvalid = errors.New("invalid seg cmd type") ErrorSegInvalidPeekSize = errors.New("invalid seg peek size") ErrorHasPartPeekSize = errors.New("only has part seg peek size") )
View Source
var (
DebugStr = Blue + " %s " + Reset + Blue + "[debug] " + Reset
)
View Source
var KcpLogMask int64
Functions ¶
func FileWithLineNum ¶
func FileWithLineNum() string
func GetBufferFromPool ¶
func PutBufferToPool ¶
func PutBufferToPool(buffer []byte)
func SetKcpLogMask ¶
func SetKcpLogMask(mask int)
func SetLogLevel ¶
func SetLogLevel(level LogLevel)
Types ¶
type IKcp ¶
type IKcp struct { *IConfig SendMsg func(buf []byte) (n int, err error) //udp 发送消息模块 // contains filtered or unexported fields }
func (*IKcp) GetUnusedWnd ¶
func (*IKcp) ParseFastAck ¶
type KcpLogType ¶
type KcpLogType int
const ( IKCP_LOG_OUTPUT KcpLogType = 1 IKCP_LOG_INPUT KcpLogType = 2 IKCP_LOG_SEND KcpLogType = 4 IKCP_LOG_RECV KcpLogType = 8 IKCP_LOG_IN_DATA KcpLogType = 16 IKCP_LOG_IN_ACK KcpLogType = 32 IKCP_LOG_IN_PROBE KcpLogType = 64 IKCP_LOG_IN_WINS KcpLogType = 128 IKCP_LOG_OUT_DATA KcpLogType = 256 IKCP_LOG_OUT_ACK KcpLogType = 512 IKCP_LOG_OUT_PROBE KcpLogType = 1024 IKCP_LOG_OUT_WINS KcpLogType = 2048 )
Click to show internal directories.
Click to hide internal directories.