猿问

在 golang 中创建同步列表

首先,如果这是一个愚蠢的问题,请原谅我。我想创建一个通用的同步列表(如在 Java 中)以在我的 Go 项目中重用。我找到了 Go 的链表的来源,我想知道简单地向列表操作函数添加互斥锁是否足够?


慕丝7291255
浏览 223回答 1
1回答

森栏

如果要创建并发安全的容器,则需要保护对数据的所有访问,而不仅仅是写入。检查元素,甚至在Len()不同步读取的情况下调用都可能返回无效或损坏的数据。使用互斥锁保护整个数据结构可能更容易,而不是实现您自己的并发链表。
随时随地看视频慕课网APP

相关分类

Go
我要回答