mirror of
https://github.com/skywind3000/kcp.git
synced 2025-04-28 16:10:14 +08:00
Updated KCP Best Practice (markdown)
parent
c34e3998e2
commit
071c1505fc
@ -48,6 +48,6 @@ connection.send(channel, pkt, size);
|
||||
|
||||
channel == 0 使用 kcp 发送可靠包,channel == 1 使用 udp 发送非可靠包。
|
||||
|
||||
因为传输是你自己实现的,你可以在发送UDP包的头部加一个字节,来代表这个channel,收到远程来的 UDP以后,也可以判断 channel==0 的话,把剩下的数据给 ikcp_input,否则剩下的数据为远程非可靠包。这样你得到了一个新的发送函数,用channel来区别你想发送可靠数据还是非可靠数据。
|
||||
因为传输是你自己实现的,你可以在发送UDP包的头部加一个字节,来代表这个channel,收到远程来的 UDP以后,也可以判断 channel==0 的话,把剩下的数据给 ikcp_input,否则剩下的数据为远程非可靠包。
|
||||
|
||||
再统一封装一个 RECV 函数,先去 ikcp_recv 那里尝试收包,收不到的话,看刚才有没有收到 channel=1 的裸UDP包,有的话返回给上层用户。
|
||||
这样你得到了一个新的发送函数,用channel来区别你想发送可靠数据还是非可靠数据。再统一封装一个 RECV 函数,先去 ikcp_recv 那里尝试收包,收不到的话,看刚才有没有收到 channel=1 的裸UDP包,有的话返回给上层用户。
|
Loading…
Reference in New Issue
Block a user