[go] sync 패키지의 map 사용법

sync 패키지는 고루틴 간에 안전한 공유 데이터 구조를 제공합니다. 이 패키지의 map은 동시에 여러 고루틴이 접근할 때 발생하는 경쟁 조건을 방지하는 데 유용합니다. 이번 포스트에서는 sync 패키지의 map을 사용하는 방법을 알아보겠습니다.

sync.Map 생성하기

sync.Map을 생성하려면 다음과 같이 합니다:

package main

import (
	"fmt"
	"sync"
)

func main() {
	m := sync.Map{}
	// map에 데이터 추가, 삭제, 조회 등의 기능은 sync.Map에서 제공하는 메서드를 통해 수행합니다
}

sync.Map에 데이터 추가하기

sync.Map에 데이터를 추가하려면 Store 메서드를 사용합니다:

m.Store("key", "value")

sync.Map에서 데이터 조회하기

sync.Map에서 데이터를 조회하려면 Load 메서드를 사용합니다:

value, ok := m.Load("key")

sync.Map에서 데이터 삭제하기

sync.Map에서 데이터를 삭제하려면 Delete 메서드를 사용합니다:

m.Delete("key")

이렇게 sync 패키지의 map을 사용하여 안전하게 공유 데이터를 관리할 수 있습니다. 고루틴 간에 안전하게 데이터를 공유해야 하는 경우에 유용하게 활용할 수 있습니다. sync 패키지에 대한 자세한 내용은 공식 문서를 참고하시기 바랍니다.