This commit is contained in:
@@ -223,14 +223,19 @@ func (p *Player) ItemAdd(ItemId, ItemCnt uint32) (result bool) {
|
||||
|
||||
return false
|
||||
}
|
||||
func (player1 *Player) Kick() {
|
||||
|
||||
// Kick 是否热更退出
|
||||
func (player1 *Player) Kick(isquit bool) {
|
||||
if player1.Info == nil {
|
||||
return
|
||||
}
|
||||
|
||||
head := common.NewTomeeHeader(1001, player1.Info.UserID)
|
||||
|
||||
head.Result = uint32(errorcode.ErrorCodes.ErrXinPlanSleepMode)
|
||||
head.Result = uint32(errorcode.ErrorCodes.ErrAccountLoggedInElsewhere)
|
||||
if isquit {
|
||||
head.Result = uint32(errorcode.ErrorCodes.ErrXinPlanSleepMode)
|
||||
}
|
||||
// 实际上这里有个问题,会造成重复保存问题
|
||||
|
||||
player1.SendPack(head.Pack(nil))
|
||||
@@ -244,7 +249,7 @@ func (player1 *Player) Kick() {
|
||||
|
||||
// --- 新增超时机制核心代码 ---
|
||||
// 设定超时时间(可根据业务需求调整,这里以3秒为例)
|
||||
const kickTimeout = 3 * time.Second
|
||||
const kickTimeout = 5 * time.Second
|
||||
select {
|
||||
case <-CloseChan:
|
||||
// 正常流程:连接关闭回调已执行,CloseChan 被关闭
|
||||
|
||||
Reference in New Issue
Block a user