문법
-
Rust: Go와 비슷하게 멀티쓰레딩 짜기컴퓨터/Rust 2022. 8. 29. 14:37
my_map := make(map[string]string) var wg sync.WaitGroup wg.Add(len(my_map )) for key := range my_map { go func(key string) { defer wg.Done() stdout, _ := exec.Command(key, "some command").Output() lock.Lock() defer lock.Unlock() my_map[key] = "updating map value while iterating" // eg stdout }(key) } 어느 날 위와 같이 Go언어로 작성한 것을 Rust로 옮기려다가 배운 것이다. 위 Go언어으로 짠 걸 보면 우선 Map을 만들고 key마다 돌면서 thread를 spawn ..