go中使用t.(type)有没有性能问题?

func Test(t T){
   t.(A).xxx
}

T是一个interface。
目的是想把方法做的更灵活一点,但是使用多了,会不会有性能问题?

阅读 3.9k
1 个回答

类型转换涉及运行时安全检查

在Go运行时,为了确保类型安全,类型判断需要执行一系列的检查操作。
同样在A接口转换为B接口时性能影响更甚,因为它需要检查和确保一个接口是否实现了另一个接口。

之前看过这个问题
可以看下这篇文章
https://stackoverflow.com/que...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题