これはここからの続きです: Golang: Shared communication in async http server
ロック付きのハッシュマップがあると仮定します:
//create async hashmap for inter request communication
type state struct {
*sync.Mutex // inherits locking methods
AsyncResponses map[string]string // map ids to values
}
var State = &state{&sync.Mutex{}, map[string]string{}}
これに書き込む関数はロックを設定します。私の質問は、ハッシュマップへの書き込みをブロックせずに別の関数に値をチェックさせる最善/最速の方法は何ですか? 値が存在する瞬間を知りたいです。
MyVal = State.AsyncResponses[MyId]