스레드

스레드(Thread) 는 프로그램 안에서 작업을 처리하는 실행 흐름입니다.

쉽게 말하면

프로그램 안에서 일하는 일꾼 하나라고 생각하면 돼요.

비유

비유프로세스스레드
공장공장 건물공장 안 일꾼
음식점가게직원
회사회사직원
프로세스 (프로그램 하나)
├── 스레드 1 (일꾼)
├── 스레드 2 (일꾼)
└── 스레드 3 (일꾼)

싱글 스레드 vs 멀티 스레드

싱글 스레드 (일꾼 1명)

일꾼: 작업1 → 작업2 → 작업3 (순서대로)

멀티 스레드 (일꾼 여러 명)

일꾼1: 작업1
일꾼2: 작업2  ← 동시에 처리
일꾼3: 작업3

JavaScript는?

싱글 스레드입니다. 일꾼이 1명이에요.

console.log("1");
console.log("2");
console.log("3");
// 무조건 순서대로 실행

그래서 하나가 오래 걸리면 뒤에가 막혀요 (블로킹).

그럼 JS는 느리나?

아니요. 비동기처리**로 해결해요.

console.log("1");
setTimeout(() => console.log("2"), 1000);  // 나중에 처리
console.log("3");

// 결과: 1 → 3 → 2

일꾼이 기다리지 않고 다른 일 먼저 하고, 나중에 돌아와서 처리합니다.

한줄 요약

스레드 = 프로그램 안에서 작업을 처리하는 실행 단위 (JavaScript는 싱글 스레드)

CSLOG에서 보기