syncs

package
v0.0.0-...-ae1ba64 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2024 License: MIT Imports: 1 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Map

type Map[K comparable, V any] struct {
	// contains filtered or unexported fields
}

func NewMap

func NewMap[K comparable, V any]() *Map[K, V]

func (*Map[K, V]) Clear

func (sm *Map[K, V]) Clear()

Clear wraps sync.Map.Clear. 清除 map 中的所有键值对.

func (*Map[K, V]) CompareAndDelete

func (sm *Map[K, V]) CompareAndDelete(key K, old V) (deleted bool)

CompareAndDelete wraps sync.Map.CompareAndDelete. 比较并删除, 如果 key 存在且旧值等于 old, 则删除该键值对. 值的类型必须是可比较的.

func (*Map[K, V]) CompareAndSwap

func (sm *Map[K, V]) CompareAndSwap(key K, old, new V) (swapped bool)

CompareAndSwap wraps sync.Map.CompareAndSwap. 比较并交换, 如果 key 存在且旧值等于 old, 则将新值存储到 map 中. 值的类型必须是可比较的.

func (*Map[K, V]) Delete

func (sm *Map[K, V]) Delete(key K)

Delete wraps sync.Map.Delete. 删除一个键值对.

func (*Map[K, V]) Load

func (sm *Map[K, V]) Load(k K) (value V, ok bool)

Load wraps sync.Map.Load. 返回 map 中的值, 如果没有则返回零值. ok 字段表示 key 是否存在.

func (*Map[K, V]) LoadAndDelete

func (sm *Map[K, V]) LoadAndDelete(key K) (value V, loaded bool)

LoadAndDelete wraps sync.Map.LoadAndDelete. 删除一个键值对, 并返回旧值(如有). loaded 字段表示 key 是否存在.

func (*Map[K, V]) LoadOrStore

func (sm *Map[K, V]) LoadOrStore(key K, value V) (actual V, loaded bool)

LoadOrStore wraps sync.Map.LoadOrStore. 如果 key 存在, 则返回旧值; 否则存储一个键值对到 map 中, 并返回新值. loaded 字段为 true 表示 key 已经存在, false 表示返回的是存储的新值.

func (*Map[K, V]) Range

func (sm *Map[K, V]) Range(f func(key K, value V) bool)

Range wraps sync.Map.Range. 遍历 map 中的所有键值对. 对 map 中的每个键值对依次调用 f, 如果 f 返回 false, 则停止迭代.

func (*Map[K, V]) Store

func (sm *Map[K, V]) Store(key K, value V)

Store wraps sync.Map.Store. 存储一个键值对到 map 中.

func (*Map[K, V]) Swap

func (sm *Map[K, V]) Swap(key K, value V) (actual V, loaded bool)

Swap wraps sync.Map.Swap. 存储一个键值对到 map 中, 如果 key 已经存在, 则返回旧值. loaded 字段表示 key 是否存在.

func (*Map[K, V]) ToMap

func (sm *Map[K, V]) ToMap() map[K]V

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL