gpt4 book ai didi

go - defer 语句在哪里实现?

转载 作者:IT王子 更新时间:2023-10-29 00:58:26 26 4
gpt4 key购买 nike

我想知道 defer-Statement 的工作原理和原因,以及它的实现位置(在编译器源代码中)。

我找到了关于解析 defer-Statement 并在语法树中构建它的包

但我对运行时延迟的实际执行很感兴趣。我的猜测是,它位于“src/runtime”中的某个地方

最佳答案

从这里开始阅读 https://github.com/golang/go/blob/d089a6c7187f1ff85277515405ec6c641588a7ff/src/runtime/panic.go#L70

您还可以在存储库中搜索术语“deferreturn”以查找更多结果。

延迟跳转的程序集在这里 https://github.com/golang/go/blob/master/src/runtime/asm_amd64.s#L550

关于go - defer 语句在哪里实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44010453/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com