Queue 와 Thread의 관계
2020. 12. 16. 15:54ㆍ2021/JOB DA STUDY
Queue
FIFO(First In First Out)구조로 데이터를 저장하는 구조이다.
Thread
프로그램(프로세스) 내에서 실행되는 흐름의 단위를 말하며, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행하는 경우도있는데 이의 경우 Multi Thread라고 한다.
프로젝트를 진행하면서 아래와 같이 cmd창에 Queue=5, Thread=7이 있는걸 봤다.
문득 이 둘사이에 무슨 관계가 있을까라는 생각을 하였고, 곰곰히 생각해 보았다.
우선 총 20개의 데이터가 들어오게 되면,
Queue에 5개까지 데이터가 push된다.
이후에 어떤 요청이 들어오게 되면 데이터를 하나씩 pop하여 프로그램을 수행하게 된다.
여기서 Thread는 최대 7개 까지 이므로 동시요청의 경우 최대 7개 까지 수용 가능하다.
잔여 데이터 | QUEUE | THREAD |
15 | 5 | 0 |
14 | 5 | 1 |
13 | 5 | 2 |
12 | 5 | 3 |
11 | 5 | 4 |
10 | 5 | 5 |
9 | 5 | 6 |
8 | 5 | 7 |
총 요청은 7개 까지만 받을 수 있으므로 Queue에 들어올수 있는 데이터는 잔여 데이터를 제외한 12개인 셈이다.
'2021 > JOB DA STUDY' 카테고리의 다른 글
Argument 와 Parameter (0) | 2020.12.21 |
---|---|
Map (0) | 2020.12.18 |
메모리 구조 (0) | 2020.12.15 |
2주차 과제: 자바 데이터 타입, 변수 그리고 배열 (0) | 2020.12.15 |
1주차 과제: JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가? (0) | 2020.12.15 |