비동기(2)
-
자바스크립트 이벤트 루프 동작 원리 (브라우저) - 비동기
이전 포스팅에서 node.js 동작 원리를 살펴보면서 이벤트 루프에 대해 알아보았다. https://growth-coder.tistory.com/305 [Node.js] Node.js 동작 원리 (node.js는 싱글 쓰레드일까? 멀티 쓰레드일까?)Node.js가 싱글 쓰레드인지 멀티 쓰레드인지 알기 위해 Node.js가 자바스크립트 코드를 어떠한 방식으로 실행하는지 알아야 한다. 자바스크립트는 기본적으로 브라우저에서 실행하기 위한 언어이growth-coder.tistory.com 기본적으로 자바스크립트는 브라우저에서 동작할 수 있는데 node.js는 자바스크립트를 브라우저에서 벗어나도 사용할 수 있게 해주는 자바스크립트 런타임이다. 이번에는 브라우저에서 자바스크립트를 실행할 때 이벤트 루프의 동작 방식..
2024.09.10 -
동기(Synchronous) vs 비동기(Asynchronous), 블로킹(Blocking) vs 논블로킹(Non Blocking)
동기, 비동기동기 비동기는 작업의 순서에 초점을 맞춘다. 동기 작업은 요청한 작업이 완료된 후 다음 작업을 진행하기 때문에 작업의 순서가 보장된다. 비동기 작업은 작업을 요청한 후 완료 여부를 따지지 않고 바로 다음 작업을 진행하기 때문에 작업의 순서가 보장되지 않는다. 비동기의 장점은 요청을 보내고 완료 여부를 따지지 않기 때문에 여러 작업을 동시에 진행할 수 있지만 어떠한 작업이 먼저 완료되는지 알 수 없다. 블로킹, 논블로킹블로킹, 논블로킹은 코드의 흐름을 제어할 수 있는 제어권에 초점을 맞춘다. 블로킹 방식은 함수를 호출하면 호출한 함수에게 제어권을 넘겨주기 때문에 코드의 흐름이 멈춘다. 논블로킹 방식은 함수를 호출하면 제어권을 자신이 가지고 있기 때문에 코드의 흐름이 멈추지 않는다. 동기 + 블..
2024.08.22