반응형

비동기 2

[JS] 비동기 / Promise / async.await

웹 브라우저? 🔻 웹 브라우저? : 서버에서 받아온 HTML, CSS, JS를 실행시켜주는 프로그램이다. 브라우저는 자바스크립트를 실행하는 과정이 있다. 브라우저는 C++이라는 언어로 코드가 짜져있는데, 브라우저는 실행해야할 자바스크립트 코드를 발견하면 C++ 언어로 만들어둔 stack에 넣어서 돌린다. stack은 다 집어넣고 맨 윗줄부터 하나하나 실행시키는 공간이다. 하지만, 서버로의 ajax 요청, eventlistener, setTImeout 이런 코드들은 코드를 처리하기까지 시간이 오래걸린다. 그래서 이런코드들은 stack에 쌓아서 실행하지않고, Queue라는 곳에 집어넣고 기다렸다가 stack이 비어있을 때 차례로 Queue에서 stack으로 집어넣어서 실행해준다. 따라서, stack을 바쁘게..

Archive 2022.01.06

[Node.js] 비동기

비동기 실행 : 특정 작업이 완료되었을 때 실행할 콜백을 등록해두고 바로 다음 코드로 실행을 넘기는 것 ( 이전 작업의 마무리 여부에 상관없이 그 다음 일을 처리하는 작업 방식 ) > 비동기 실행의 장점 : '동기 실행'에 비해 '비동기 실행'이 훨씬 더 빠름 > 프로그램의 실행 흐름 Process 프로세스 : 하나의 실행 흐름 Thread 스레드 : 그 안에있는 더 작은 단위의 실행흐름 더보기 ex) chrome 실행 ( 더블클릭 > 실행) hard-disk나 SSD에 저장되있던 프로그램 > memory에 올려서 > CPU(central Processing Unit)실행 하나의 크롬 '프로세스'생성 > 그 안에 하나의 '스레드'가 실행 중 상태 영화다운 (스레드-1) / 음악재생 (스레드-2) / 구글..

Archive 2021.09.13
반응형