我的问题是关于Context
interface的设计选择。如果我想创建一个从parent
一个child
方面,我可以这样做:上下文界面设计
child, cancel := context.WithTimeout(parent, timeout)
,那岂不是更好,如果WithTimeout
是接口的一部分,所以我们可以简单地写:
child, cancel := parent.WithTimeout(timeout)
它对我来说似乎非常干净。它更短,并且不需要import context
。
为什么生成子上下文的函数不是Context
接口的一部分?
有趣的问题,但 - 我认为 - 由于是基于意见的主题。也许新的[softwareengineering.stackexchange.com](http://softwareengineering.stackexchange.com/)会更好;我不知道。 –
@KonradRudolph我认为这不太适合软件工程。除非碰巧有Go语言开发人员,否则没有人可以提供正确的答案,并且它变成主要基于意见或请求提供答案的资源。如果它在堆栈溢出的话题不在话题上,我会建议将它发布到开发团队常去的某种Go社区或邮件列表中。 –