1
0
mirror of https://github.com/skywind3000/kcp.git synced 2025-04-28 16:10:14 +08:00

Updated KCP Best Practice (markdown)

Linwei 2018-05-23 18:25:28 +08:00
parent 071c1505fc
commit 0bdab78e80

@ -48,6 +48,6 @@ connection.send(channel, pkt, size);
channel == 0 使用 kcp 发送可靠包channel == 1 使用 udp 发送非可靠包。
因为传输是你自己实现的你可以在发送UDP包的头部加一个字节来代表这个channel收到远程来的 UDP以后也可以判断 channel==0 的话,把剩下的数据给 ikcp_input否则剩下的数据为远程非可靠包。
因为传输是你自己实现的你可以在发送UDP包的头部加一个字节来代表这个 `channel`,收到远程来的 UDP以后也可以判断 channel==0 的话,把剩下的数据给 `ikcp_input`,否则剩下的数据为远程非可靠包。
这样你得到了一个新的发送函数用channel来区别你想发送可靠数据还是非可靠数据。再统一封装一个 RECV 函数,先去 ikcp_recv 那里尝试收包,收不到的话,看刚才有没有收到 channel=1 的裸UDP包有的话返回给上层用户。
这样你得到了一个新的发送函数用channel来区别你想发送可靠数据还是非可靠数据。再统一封装一个 `connection.recv` 函数,先去 `ikcp_recv` 那里尝试收包,收不到的话,看刚才有没有收到 channel=1 的裸UDP包有的话返回给上层用户。