작은 스크립트를 만들어 콜백을 더 잘 이해합니다.콜백 이해
아래의 스크립트에서 예상 한 동작은 다음과 같습니다. "http.get이 실행되고 평균 200ms 걸립니다. for 루프"i "증가분은 평균 2500ms가 걸립니다. 200ms에서 프로세스가 종료되고 스크립트 내가이 더 나은 이해한다면, 내가 콜백을 이해하고 생각하는거야? 왜 내가 모두 인쇄됩니다. 작업을 중지해야한다.
var http = require("http");
var starttime = new Date();
//Function with Callback
for (var j =0; j<10; j++){
http.get({host : 'nba.com'}, function(res){
console.log("Time Taken = ", new Date() - starttime, 'ms');
process.exit();
}).on('error', function(er){
console.log('Got Error :', er.message);
})
}
//Loop that exceeds callback trigger time
for(var i=1; i<10000; i++){
console.log(i);
}
console.log("Time Taken = ", new Date() - starttime, 'ms');
for 루프는 동기식이며 코드는 비동기식입니다. 그것은 for 루프를 통해 get async get 호출을 실행 중이다. on 루프는 on 콜백이 시작되기 전에 종료됩니다. 비동기가 작동하는 방법을 설명하기 위해 인터넷에 많은 문서와 샘플이 있습니다. – bryanmac
감사합니다. bryanmac. 나는 그들을 체크 아웃 할 것이다. 그 구름처럼 분명합니다. – PatrickJames