Skip to content

session_id_coroutine 表中出现同一协程映射到多个会话ID的问题 #2055

@fantasytm

Description

@fantasytm

问题描述

在调试游戏服务器时,我们发现 session_id_coroutine 表中有时会出现同一个协程对象被映射到多个不同的会话ID的情况。这似乎是一个问题,因为每个协程在任意时刻应该只与一个会话ID关联。

问题影响

由于发生冲突的是协程是循环定时器协程,在定时器内发生的挂起行为,似乎会被提前唤醒,猜测是coroutine 被提前 resume,出现状态错乱

确认已排除的因素

  • 项目中未直接访问或修改 session_id_coroutine
  • 所有调用均使用 Skynet 提供的标准接口(如 skynet.sleep, skynet.call, skynet.timeout 等)
  • 问题并非频繁发生

现场截图

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions