gpt4 book ai didi

methods - 如何获取并发方法

转载 作者:IT王子 更新时间:2023-10-29 02:06:31 25 4
gpt4 key购买 nike

如何获取并发方法?

type test struct {
foo uint8
bar uint8
}

func NewTest(arg1 string) (*test, os.Error) {...}

func (self *test) Get(str string) ([]byte, os.Error) {...}

我认为方法Get() 的所有代码都应该放在go func() 的内部,然后使用 channel 。

func (self *test) Get(str string) ([]byte, os.Error) {
go func() {
// Code for this method.
}()
}
  • 如果从Get()调用另一个方法会不会有问题?或者它也必须是并发的吗?

最佳答案

看看 An example package Go 语言规范中的部分,它是一个完整的 Go 包,使用 go 语句和 channel 实现并发素数筛选。

有关其工作原理的详细说明,请参阅 Prime numbers 上的 Go 教程部分.另外,请查看 Multiplexing 上的 Go 教程部分。 .

阅读 Concurrency 上的 Effective Go 部分.

最后,阅读 The Go Language Specification 的相关部分,例如关于 Go statements 的部分, Channel types , 和 Select statements .

是的,您可以从 Get() 方法中调用另一个方法。由于方法调用不是并发的 go 语句,它会在执行下一条语句之前立即执行。

关于methods - 如何获取并发方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2771978/

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