TIPS
2025. 5. 6.
멀티스레드 환경에서 발생할 수 있는 충돌 사례 및 해결 방법
저번주 포스팅에는 멀티스레드에 대한 충돌방지에 대해 살짝 다뤄보았다하지만멀티스레드를 사용할 때 count 값을 증가시키는 것뿐만 아니라 다양한 경우에서 충돌(Race Condition)이 발생할 수 있다. 고로이런 문제들은 동기화 기법, 원자적 연산, 적절한 자료구조 사용으로 해결하는 방법에 대해 설명해 보려고 한다 1️⃣ 공유 객체(List, Map) 데이터 손상 문제❌ 문제: ArrayList를 여러 스레드가 동시에 수정하면 충돌 발생 import java.util.ArrayList;import java.util.List;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class Multi..