为了账号安全,请及时绑定邮箱和手机立即绑定

是否可以将切片用作共享内存?

是否可以将切片用作共享内存?

Go
翻阅古今 2022-09-26 20:23:56
在这样的结构中使用切片可以吗:type buffer struct {    values []int    mutex sync.RWMutex}我问,因为当我们追加切片时,我们有可能将切片复制到内存中的新位置。
查看完整描述

1 回答

?
白板的微信

TA贡献1883条经验 获得超3个赞

在大多数Go编程中,人们会在没有性能问题的情况下分配切片,以防返回新内存,因为切片是参考值。append


b.values = append(b.values, i)


type buffer struct {

    values []int

    mutex sync.RWMutex

}


func (b *buffer) Append(i int) {

    b.mutex.Lock()

    b.values = append(b.values, i)

    b.mutex.Unlock()

}


查看完整回答
反对 回复 2022-09-26
  • 1 回答
  • 0 关注
  • 72 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信