프로세스, 스레드, 멀티스레드는 모두 컴퓨터에서 실행되는 프로그램을 구성하는 단위입니다. 각각의 개념을 설명하면 다음과 같습니다
프로세스(Process)
- 실행 중인 프로그램을 의미합니다. 각각의 프로세스는 운영체제(OS)에서 독립적으로 메모리 공간과 시스템 자원을 할당받으며, 다른 프로세스와는 독립적으로 실행됩니다.
스레드(Thread)
- 하나의 프로세스 내에서 실행되는 실행 흐름을 의미합니다. 스레드는 해당 프로세스 내에서 자원을 공유하며, 병렬로 실행될 수 있습니다. 스레드는 프로세스 내에서 동작하는 가장 작은 실행 단위이며, 프로세스의 실행 속도를 향상시키는 데에 유용하게 사용됩니다.
멀티스레드(Multithreading)
- 하나의 프로세스 내에서 여러 개의 스레드가 병렬로 동작하는 것을 의미합니다. 멀티스레드를 사용하면, 프로세스 내에서 다수의 스레드가 작업을 분담하여 동시에 실행될 수 있으므로, 전체적인 실행 속도를 향상시키는 데에 효과적입니다.
'면접질문' 카테고리의 다른 글
[Q&A] Const를 사용했지만, 값을 변경할 수 있는 상황은? (0) | 2023.04.18 |
---|---|
[Q&A] 동기와 비동기 (0) | 2023.02.14 |
[Q&A] 변수의 생성과정과 호이스팅에 대해 설명해라 (0) | 2023.02.14 |
[면접질문] NodeJS 및 NestJS 신입 질문모음 (0) | 2023.02.07 |