开发者社区> 问答> 正文

为什么 defer 中的 recover() 没有捕获到 ?

为什么 defer 中的 recover() 没有捕获到 "fatal error: concurrent map writes"?

展开
收起
花开富贵111 2024-06-19 17:10:56 24 0
1 条回答
写回答
取消 提交回答
  • "fatal error: concurrent map writes" 异常是通过 runtime.fatal() 方法抛出的,属于不可恢复的异常,因此即使在 defer 中使用了 recover(),也无法捕获并恢复该异常。这种异常表明 map 的内部结构已经被破坏,继续运行可能会产生不可预期的结果,因此程序会强制结束。

    2024-06-19 17:38:35
    赞同 2 展开评论 打赏
问答分类:
Go
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载