싱글코어일때 멀티 스레드 작업시 문제
166
작성한 질문수 4
노트북 환경이 싱글코어라 궁금해서 멀티스레드 환경으로 코드를 돌리니까 값이 매번 다르게 나오는데
싱글코어 환경에서는 멀티스레드 테스트가 불가능 한건가요?
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. dpe2233님.
싱글코어 환경에서 멀티스레드 프로그램을 실행할 때 발생할 수 있는 특성과 문제점에 대해 궁금하신 것 같습니다. 싱글코어 CPU에서도 멀티스레드는 동작하지만, 동시에 여러 작업을 병렬로 처리하는 것이 아니라 컨텍스트 스위칭을 통해 각각의 스레드를 번갈아 가며 실행합니다. 이 때문에 데이터 불일치나 경합 조건(race condition) 같은 문제가 발생할 수 있습니다.
관련 답변을 참고할 수 있는 기존 질문들:
멀티쓰레드와 싱글코어에서의 동작 - 멀티 스레드 환경이 어떻게 작동하는지, 특히 싱글코어에서의 스레드 동작에 대한 설명이 포함되어 있습니다.
멀티쓰레드 관련 질문입니다 - 멀티스레드 환경에서 사용되는 동기화 방법인 Interlocked와 race condition 문제를 어떻게 해결할 수 있는지에 대한 설명이 포홤되어 있습니다.
싱글코어 환경에서도 멀티스레드 프로그래밍을 실습할 수는 있지만, 발생할 수 있는 다양한 동기화 문제를 해결하기 위해서는 철저한 테스트와 동기화 메커니즘의 적용이 필요합니다. 동시에 처리되는 것처럼 보이지만 실제로는 순차적으로 처리되기 때문에 데이터 일관성 문제가 빈번히 발생할 수 있습니다.
제가 제공한 링크들이 문제가 해결에 도움이 되기를 바랍니다. 추가적으로 궁금한 점이 있으시면 질문을 이어서 해주시길 바랍니다. 지식공유자께서 직접 답변해 주실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
Memory Pool에서 오버플로우 질문입니다.
0
61
2
포토폴리오 및 진로 관련하여 고민입니다.
0
109
1
포토폴리오 관련 고민입니다.
0
59
1
실무에서도 alloc, 스마트포인터 등을 구현해서 쓰는지 궁금합니다.
0
80
2
성능 테스트 결과
0
101
2
게임 서버 Stateful, Stateless 진로 고민
0
118
1
WaitOnAddress와 Sleep의 차이 질문
0
81
1
궁금한거 있습니다.
0
79
2
JobTimer 구동 스레드
0
105
2
TryPop() 동작 관련 질문
0
79
1
로드맵 C#서버 C++서버 방향성 질문
0
145
2
스레드 id를 출력할떄 메인스레드 id도 출력되나요?
0
71
1
생명주기를 위한 의도적 복사
0
83
2
락프리의 실무에서 사용 질문
0
138
2
32bit threadID와 16비트 상위 WriteFlag에 대해
0
99
2
mutex와 sleep 차이점
0
115
1
실무에서는 어떠한 코드 스타일을 사용하는지 궁금합니다
0
150
2
Stomp Allocator의 Release함수에 대한 질문입니다.
0
94
1
공부법 관련해서
0
181
2
MakeShared 함수 관련
0
112
1
지금까지 서버코어에서 만든 내용에 대해 궁금한 점이 있어서 질문 드립니다.
0
142
2
운영체제관련 질문입니다
0
129
1
send하려는 데이터 크기가 크면 memcpy에서 문제가 발생할 것 같습니다.
0
115
2
메모리 풀 질문있습니다.
0
121
1





