본문 바로가기

비동기2

동기와 비동기 (Synchronous & Asynchronous) 대학교 1학년 때의 일입니다. 가끔씩 졸업하신 선배님들이 학교에 방문하시는 일이 몇 번 있었는데, 오실때마다 동아리 부원들에게 밥과 간식거리를 사주시곤 하셨었습니다. 같이 이야기도 하고 함께 스터디를 진행할 사람을 찾기도 하시고 공부중 모르는 내용이 있으면 알려주시기도 하셨는데 그 날은 발표 자료를 꺼내시며 다른 쪽 스터디를 위해 준비했었던 자료지만 학부생들도 들으면 도움이 될 내용이니 한 번 구경이라도 해보길 권하셨습니다. 한창 전공 내용에 대해 호기심이 있었던터라 감사한 마음으로 수강신청(?)을 했고, 그 자리에서 비어있던 강의실 하나를 빌려 즉석에서 발표회가 열리게 되었습니다. 그 때 발표하셨던 내용이 바로 비동기에 대한 간단한 소개였는데, 사실 작동만 하는 프로그램 하나마저 제대로 짤 줄 몰랐던 .. 2020. 9. 18.
싱글 쓰레드 Javascript의 비동기적 동작 이 글은 JSConf EU 2014에서 발표 된 Philip Roberts의 What the heck is the event loop anyway? 의 내용을 듣고 정리한 글입니다. 동기와 비동기는 프로그래밍을 하는 사람이라면 한 번쯤은 들어봤을법한 단어들입니다. 간단히 말하면 동기는 태스크(task)를 순차적으로 실행하는 것 이고, 비동기는 병렬적으로 처리하는 것 입니다. 이러한 동기의 가장 큰 문제점이 바로 하나의 태스크가 완료되기 전까진 다른 일을 수행할 수 없고, 끝날때까지 기다려야 한다는 점입니다. 우리가 사용하는 모든 프로그램이 동기적인 동작밖에 취할 수 없다면 큰 문제가 발생하겠죠. 이는 웹에서도 마찬가지입니다. 우리는 웹에서 수 많은 동작들을 실행합니다. 이곳저곳에서 데이터들을 받아오고, .. 2020. 9. 7.