-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
멀티 스레딩의 장점과 문제점이 뭘까요? #1
Comments
오 깔끔한 정리+ 꿀정보 감사합니다!! 👍👍👍 멀티스레딩의 장점에서 3번에 해당하는 내용을 제가 봤던 자료를 바탕으로 덧붙이자면, |
결국 모두 장단점이 있는 것 같아요 :) 정리 감사합니다~! 공부하면서 Context Switching이 왜 많은 비용이 드는지 살펴보았는데 그 이유는
과 같은 이유로 비용이 많이 발생하는 것 같아요! 때문에 멀티 스레딩을 사용함으로서 상진님이 말씀하신 이유로 인해 비용 절약이 가능하네요! |
멀티스레딩 장점
병행성(Concurrency)과 병렬성(Parallelism)
|
사용자 스레드
커널 스레드
궁극적으로 커널 스레드와 사용자 스레드는 어떤 연관관계가 존재해야 한다. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
멀티스레딩의 장점
이미지 로드같은 시간이 오래 걸리는 연산을 비동기로 작동하는 별도의 스레드에서 실행한다면 연산을 처리하면서도 여전히 사용자에게 응답이 가능해지기 때문입니다.
프로세스의 경우 공유 메모리를 사용하거나 메시지 전달의 방식을 통해서만 리소스를 공유할 수 있지만, 스레드의 경우 프로세스의 자원 즉 코드 / 데이터 / 힙 / 파일 / 신호 등을 공유하고 있어 훨씬 원활한 자원 공유가 가능합니다.
프로세스를 생성하는 경우 메모리와 리소스를 많이 사용하며 비용이 큰 작업입니다. 이에 반해 스레드의 경우 프로세스의 자원을 공유하면서 스레드를 생성하고, 자원을 공유하고 있기 때문에 PCB에 다양한 정보를 가지고 Context Switch를 하는 프로세스에 비해 훨씬 경제적입니다.
멀티스레딩의 문제점
프로세스의 경우 하나의 프로세스가 멈추더라도 다른 프로세스는 문제가 없이 동작하기 때문에 이는 멀티프로세스에 비해 단점입니다.
혹시 추가적인 의견이나 잘못된 정보가 있으면 말씀해주세요!
The text was updated successfully, but these errors were encountered: