나는 List와이 List를 사용하는 두 개의 스레드를 가지고 있습니다.동일한 변수를 사용하는 두 개의 스레드에서 문제가 발생합니다.
첫 번째 스레드가 새 연결을 받고 각각의 새 연결이 목록에 추가됩니다.
두 번째 스레드가 List를 반복하여 연결을 처리합니다 (foreach 사용).
두 번째 스레드가 목록에서 반복되는 동안 루프가 끝나기 전에 목록이 변경되는 경우가 있습니다. 나는 심지어리스트의 새로운 복사본을 만들고 그것을 반복 해 보았다. 그러나 다른 문제를 일으킨다.
새로운 연결을 처리 할 새 스레드를 만들고 싶지 않습니다. 너무 많은 스레드가 성능을 저하시킬 수 있다는 것을 알고 있기 때문입니다. 연결을 처리하는 다른 방법이 있습니까?
스레딩 방법을 배우는 경우 "너무 많은 스레드가 성능을 저하시킬 수 있습니다"라고 말할 때 다른 사용자를 믿지 마십시오. 스스로 해보고 자신의 상황에서 한계가 실제로 무엇인지 알아보십시오. 당신은 훨씬 더 많이 배우게 될 것입니다. –
목록을 복사 할 때 어떤 종류의 문제가 발생합니까? – SwDevMan81
대상 배열의 크기가 올바르지 않습니다 (복사가 완료되기 전에 배열이 변경됨). –