나는 (아마도 사소한) 질문을 가지고있다. Node.js 패키지 async
, 특히 async.each
(https://github.com/caolan/async#forEach) 패키지를 사용하고 있습니다.Node.js async forEach : thread-safe?
var arrayOne=[];
async.forEach(arrayTwo,
function (item, callback){
arrayOne.push(item); // push into arrayOne
callback(); // the iterator has completed
}, function(err) {
// do something with arrayOne
});
이 arrayOne.push (항목) 안전한가요 :
다음 코드를 고려?
node.js의 모든 내용이 스레드로부터 안전하다고 생각했습니다. 단일 스레드이며 이벤트 중심의 패러다임 이었습니까? – Siler
그건 내가 아는거야. 이것이 제가 질문이 사소한 것이라고 말한 이유입니다. 그러나 비동기로 실행되는 항목은 여전히 나를 조금 혼란스럽게 만듭니다. – ZzKr
비동기 작업은 이벤트가 구동되므로 미래에 이벤트가 발생할 때 언젠가 발생합니다. 이벤트가 발생할 때 주 스레드가 사용되면 이벤트 처리기는 이벤트가 해제 될 때까지 대기합니다. –