调试 Kotlin 协程
最后修改时间:2023 年 9 月 5 日虽然协程特别适合异步编程,但仍然存在出错的空间,由于异步流程带来的挑战,这些错误可能很难找出。
调试 Kotlin 代码时,IntelliJ IDEA 允许您暂停执行并诊断协程中的代码可能存在的问题。即使协程当前未运行,调试信息也可用。
协程调试器为您提供以下信息:
按调度程序分组的协程列表及其状态。要获取列表,请转到“协程”选项卡。顶层节点是调度程序,然后是协程。对于每个协程,您可以获得有关其当前状态(CREATED、RUNNING、SUSPENDED)及其线程状态的信息。
协程上下文:协程中某个执行点可用的局部变量和字段的值。调试协程时,您可以使用“变量”选项卡的所有标准功能。有关使用“变量”选项卡的更多信息,请参阅检查/更新变量主题。
协程创建堆栈和协程内部的调用堆栈。
如果您对 Kotlin 类中的调用不感兴趣,可以通过单击“框架”选项卡右上角的“从库中隐藏框架”来隐藏它们。
提示
在检查协程的内部操作时,您还可以使用其他分析辅助工具,例如监视和任意表达式评估。
获取协程转储
如果您需要获取包含每个协程及其堆栈的状态的报告,请使用协程转储选项。当您需要以文本格式共享有关协程的信息时,这非常有用。
右键单击Coroutines选项卡中的任意位置,然后选择Get Coroutines Dump。
将打开一个包含转储的选项卡,您可以在其中选择要导出的内容:
如果要复制与特定协程相关的信息,请选择该协程并单击“复制到剪贴板”。
要导出所有协程的转储,请单击“导出到文本文件”,然后单击“复制”(将转储复制到剪贴板),或者指定文件并单击“保存”。
感谢您的反馈意见!
此页面是否有帮助?