목차 Program, Process, Thread 프로그램, 프로세스, 그리고 스레드는 모두 컴퓨터에서 실행되는 코드를 가리킨다. 하지만 당연하게도 중요한 차이점들이 있는데, 짧게 정리하면 아래와 같다. 프로그램 프로그램은 실행 가능한 코드와 데이터의 집합이다. 실행 파일이나 라이브러리 형태로 디스크에 저장되며 실행되기 전에 디스크에서 메모리로 로드되는데, 이를 '프로그램 인스턴스'라고 한다. 프로세스 위에서 말한 '프로그램 인스턴스'가 바로 프로세스이다. 다시 한번 정리하자면 프로그램이 실행되어 운영체제에 의해 메모리상에 올라가면 이를 프로세스라 부른다. 따라서 운영체제로부터 자원을 할당받는 작업의 단위라 볼 수 있으며, 프로세스 사이에는 자원이 공유되지 않는다. 이 때문에 Context Switchi..
프로젝트 리액터(Project Reactor), 혹은 리액터는 리액티브 스트림즈의 구현체다. 로고와 이름부터 원자로, 아이언맨을 떠오르게 만드는 리액터는 2014년에 태어난 현대적인 기술로 2022년 현재 3.4.24 버전까지 릴리즈 되어있다. 스프링 MVC와 비교했을 때 가장 큰 차이점은 논 블로킹 통신을 지원한다는 점이며, 명령형이 아닌 선언형 프로그래밍으로 이루어졌다는 것 역시 큰 차이점이다. 지난 글에서 리액터를 사용한 리액티브 프로그래밍의 기초와 용어에 대해 보았으니, 2022.10.13 - [Development/Spring] - [Spring]리액티브 프로그래밍 시작하기, 용어 정리 [Spring]리액티브 프로그래밍 시작하기, 용어 정리 지난 글에서 리액티브 프로그래밍과 리액티브 스트림즈, ..
스레드(Thread) 컴퓨터에서 동작하고 있는 프로그램을 프로세스(Process)라 부른다. 프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원과 스레드로 구성된다. 스레드(Thread)란 그 프로세스 내에서 실제로 작업을 수행하는 주체를 말하는데, 당연하게도 모든 프로세스에는 기본적으로 하나 이상의 스레드가 존재한다. 참고로 스레드를 직역하면 실, 줄거리, 맥락 등의 단어가 되며 프로그램 내에서 실행되는 프로그램 제어 흐름이라는 느낌으로 받아들이면 편하다. 또한 하나의 스레드를 가지는 프로그램을 싱글 스레드 프로그램이라고 부르며 두 개 이상의 스레드를 가지는 프로그램을 멀티 스레드 프로그램이라 부른다. 멀티 스레딩은 하나의 프로그램 안에서 여러 작업을 동시에 수행하는 데 있어서 핵심적인 역할을 수..
- Total
- Today
- Yesterday
- 세계여행
- 유럽여행
- 여행
- BOJ
- 칼이사
- spring
- 파이썬
- 스프링
- 리스트
- Algorithm
- 맛집
- java
- 동적계획법
- 유럽
- 세모
- 백준
- 남미
- RX100M5
- 면접 준비
- 세계일주
- 알고리즘
- a6000
- 중남미
- 야경
- 지지
- 스트림
- 기술면접
- Python
- Backjoon
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |