안녕하세요, MoonLight입니다. C#에서 Multi Thread or Task 작업 중에 'System.InvalidOperationException: 컬렉션이 수정되었습니다. 열거 작업이 실행되지 않을 수도 있습니다.'라는 Exception을 보신적이 있을 것입니다. Multi Thread 혹은 Multi Task을 사용하다 보면 여러 Thread or Task에서 공통으로 사용해야 하는 값들이 있을 것입니다. 흔히 이것을 공유 자원이라고 하고 공유 자원을 여러 Thread에서 잘 사용할 수 있도록 조절하는 것을 동기화라고 하죠. 결론적으로, 동기화 문제를 해결하는 방법은 하나의 Thread에서 공유 자원을 사용하고 있으면 다른 Thread들에서는 사용하지 못하게 막는 것입니다. ..