이 mongoskin 사용 (다음 문서로 이동하기 전에 콜백 대기), 나는 커서 반환이 같은 쿼리를 수행 할 수 있습니다 그러나순회 직렬
myCollection.find({}, function(err, resultCursor) {
resultCursor.each(function(err, result) {
}
}
을, 나는 싶습니다 각 문서에 대해 일부 비동기 함수를 호출하고, async.js 모듈의 eachSeries 구조와 유사하게 커서가 다시 호출 된 후에 만 커서의 다음 항목으로 이동하십시오. 예 :
myCollection.find({}, function(err, resultCursor) {
resultCursor.each(function(err, result) {
externalAsyncFunction(result, function(err) {
//externalAsyncFunction completed - now want to move to next doc
});
}
}
어떻게하면됩니까?
감사
UPDATE :이 큰 일괄 작업이며, 결과는 한 번에 메모리에 맞지 않을 수도로 toArray()
를 사용하는 wan't하지 않는
.
이동하기 전에 비동기 기능이 완료되기를 기다리면서 비동기 적으로 호출하는 이유는 무엇입니까? –
@RotemHermon 나는 선택의 여지가 없어! 그것은 제 기능이 아니며 비동기입니다. (myAsyncFunction을 externalAsyncFunction으로 바꿉니다 ...) – UpTheCreek
왜 toArray()를 사용하지 않고 그 결과를 반복하는 재귀 함수를 사용하고 있습니까? –