I określonych zmiennej (r.something) wewnątrz przedmiotuCzy wymagana jest synchronizacja?
func (r *Runner) init() {
r.something = make(map[string]int)
r.something["a"]=1
go r.goroutine()
}
podczas r.goroutine wykorzystuje wartości przechowywanej w r.something bez synchronizacji. Nikt inny nie odczyta/zapisze tej wartości z wyjątkiem r.goroutine()
Czy można to zrobić bez synchronizacji?
Innymi słowy: chcę ponownie użyć jakiejś zmiennej z goroutiny zainicjowanej gdzie indziej przed początku goroutine. Czy to jest bezpieczne?
Dodatkowe pytanie: Po zakończeniu r.goroutine() chcę móc używać r.something z innych źródeł (bez nakładania się odczytu/zapisu z innymi goroutinami). Czy to też jest bezpieczne?
Całkowicie ma sens! Dzięki @tomasz – let4be