本文整理汇总了Golang中udppacket.Packet.ChangeOtherTunnelId方法的典型用法代码示例。如果您正苦于以下问题:Golang Packet.ChangeOtherTunnelId方法的具体用法?Golang Packet.ChangeOtherTunnelId怎么用?Golang Packet.ChangeOtherTunnelId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类udppacket.Packet
的用法示例。
在下文中一共展示了Packet.ChangeOtherTunnelId方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: processSendPacket
/***********************************************************
* 处理发送给tunnel的数据包
* - 功能:将新数据包加入发送队列,重传的数据包,更新状态
***********************************************************/
func (utNack *UT_NACK) processSendPacket(p *udppacket.Packet) {
/***** SEND *****/
if wrapper, ok := utNack.SendMap[p.TunnelId]; ok {
wrapper.p = p
wrapper.status = WRAPPER_STATUS_RTR
} else { // 新包,发送队列中不存在该packet的wrapper
wrapper = new(PACKET_WRAPPER)
wrapper.p = p
wrapper.status = WRAPPER_STATUS_SENDED
utNack.SendMap[p.TunnelId] = wrapper
}
if p.TunnelId > utNack.maxSendId {
utNack.maxSendId = p.TunnelId
}
/***** RECV *****/
otherTunnelId, flag := utNack.getNackPacketTunnelId()
p.ChangeOtherTunnelId(otherTunnelId)
p.ChangePacketType(flag)
}