Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- Bitrise
- 데이터베이스 첫걸음
- 실버 4
- LazyRow
- capitalize
- 최댓값 최솟값
- 피보나치 수 2
- Activirty
- navigation component
- gradlew
- LazyColumn
- 개발하는 정대리
- 2레벨
- github action
- DB
- Myungpyo Shim
- 데이터베이스
- kotlin
- 브론즈1
- 백준
- 브론즈 1
- Android
- 실버2
- keystore
- .github
- compose
- 프로그래머스
- 성빈랜드
- suspend programming
- DB 기능
Archives
- Today
- Total
plzy의 개발 블로그
[CS 기초] Thread, Process의 차이점이 무엇일까? 본문
흔히 면접 질문중 기본적으로 나오는게 Thread와 Process의 차이점이 있다.
그 둘은 모든 개발자들이 한번 씩 들어보고, 사용해봤지만 정확히 알 기에는 어려움이 있어 정리해보고자 한다.
먼저 Thread 는 무엇일까?
프로그램 실행의 단위 이며, 하나의 프로세스안에 여러 쓰레드가 있을 수 있다.
그렇다면 프로세스는 무엇일까?
현재 컴퓨터에서 실행중인 프로그램의 인스턴스 라고 할 수 있다.
비유를 하나 해보자
프로세스는 반, 쓰레드는 학생 이라고 해보자.
반에서 학생들이 공부하고 있다. 이때 한 학생이 무언가 잘못되 공부를 못하게 된다면 나머지 학생들도 공부를 못하게 된다.
이를 해결하기 위해 비동기 처리를한다.
하나의 학생이 난동을 피워도, 나머지 학생들은 지장 잆게 공부 할 수 있다는거다.
3줄요약
- 프로세스는 운영체제로부터 자원을 할당받는 작업의 단위
- 스레드는 할당 받은 자원을 이용하는 실행의 단위, 프로세스안에 여러 개의 쓰레드가 있을 수 있다.
- 어플리케이션 하나가 프로세스이고, 이 안의 처리가 스레드가 되는 것 이다.