File tree 1 file changed +5
-4
lines changed 1 file changed +5
-4
lines changed Original file line number Diff line number Diff line change 202
202
<details >
203
203
<summary >동기와 비동기의 차이(블로킹, 넌블로킹) / 장단점에 대해 설명해보세요.</summary >
204
204
</br >
205
- <p >동기/비동기는 두 개 이상의 무엇인가가 시간을 맞춘다/안맞춘다로 구분할 수 있습니다. 메서드 리턴과 결과를 전달받는 시간이 일치하면 동기입니다. 또, A가 끝나는 시간과 B가 시작하는 시간이 같으면 동기입니다.</p >
206
- <p >보통 비동기 방식은 여러 개의 처리가 함께 일어나기 때문에, 동기 방식에 비해 많은 작업을 처리할 수 있습니다. 단, CPU 리소스를 많이 사용하는 작업을 비동기로 처리하게 되면 과부하가 걸릴 수 있습니다.</p >
207
- <p >블로킹/논블로킹은 동기/비동기와는 다른 관점으로, 내가 직접 제어할 수 없는 대상(IO/멀티스레드)을 상대하는 방법에 대한 것입니다.</p >
208
- <p >블로킹 방식은 대상의 작업이 끝날 때 까지 제어권을 대상이 가지고 있는 것을 의미합니다. 반면에 논블로킹은 해당 작업 완료여부와 상관없이 자신의 작업을 그대로 수행합니다.</p >
205
+ <p >동기/비동기는 두 개 이상의 무엇인가가 시간을 맞춘다/안맞춘다로 구분할 수 있습니다.</p >
206
+ <p >동기 방식은 메서드 리턴과 결과를 전달받는 시간이 일치하는 명령 실행 방식입니다. 또, 동기 방식은 한 함수가 끝나는 시간과 바로 다음의 함수가 시작하는 시간이 같습니다.</p >
207
+ <p >비동기 방식은 여러 개의 처리가 함께 실행되는 방식으로, 동기 방식에 비해 많은 작업을 처리할 수 있습니다. 단, CPU 리소스를 많이 사용하는 작업을 비동기로 처리하게 되면 과부하가 걸릴 수 있습니다.</p >
208
+ <p >블로킹/논블로킹은 동기/비동기와는 다른 관점으로, 내가 직접 제어할 수 없는 대상(IO/멀티스레드)을 상대하는 방법에 대한 분류입니다.</p >
209
+ <p >블로킹 방식은 대상의 작업이 끝날 때 까지 제어권을 대상이 가지고 있는 것을 의미합니다. 반면에 논블로킹은 대상의 작업 완료여부와 상관없이 새로운 작업을 수행합니다.</p >
209
210
<p >동기 논블로킹은 계속해서 polling을 수행하기 때문에 컨텍스트 스위칭이 지속적으로 발생해 지연이 발생합니다.</p >
210
211
<p >https://youtu.be/HKlUvCv9hvA 를 참고합시다.</p >
211
212
</details >
You can’t perform that action at this time.
0 commit comments