调试 Kotlin 协程
虽然协同程序特别适合异步编程,但由于异步流程带来的挑战,仍然有出错的可能,而且这些错误可能很难查明。
在调试 Kotlin 代码时,IntelliJ IDEA 允许您暂停执行并诊断协程中的代码可能存在的问题。 即使协程此刻没有运行,调试信息也可用。
协程调试器为您提供以下信息:
按 dispatcher 分组的协程及其状态列表。 要获取列表,请转到 协程 选项卡。 顶级节点是 dispatchers,其次是 go coroutines。 对于每个 coroutine,您可以获取其当前状态(创建、 运行中、 暂停 )及其线程的状态。

协程上下文:在某个执行点协程中可用的局部变量和字段的值。 调试协程时,您可以使用 变量 选项卡的所有标准功能。 有关使用 变量 选项卡的更多信息,请参阅 检查/更新变量 主题。

协程创建堆栈和协程内的调用堆栈。

如果您对 Kotlin 类中的调用不感兴趣,可以通过点击 在库中隐藏帧 隐藏它们,此选项位于 帧 选项卡的右上角。

获取协程转储
如果您需要获取包含每个 coroutine 状态及其堆栈的报告,请使用 coroutine dump 选项。 这在您需要以文本格式共享有关 coroutines 的信息时很有用。
在 协程 选项卡中的任意位置右键点击并选择 获取协程转储。

会打开一个包含转储文件的选项卡,您可以选择要导出的内容:
如果您想复制与特定 coroutine 相关的信息,请选择它并点击 复制到剪贴板。
要导出所有协程的转储,点击 导出到文本文件 ,然后点击 复制 (将转储复制到剪贴板),或指定文件并点击 保存。
最后修改日期: 2025年 4月 24日