5
所以我有一些代碼看起來像:的Node.js - 等待多個函數來完成
var data = someobject;
for(var x in data){
mongo.findOne({ _id:data[x]._id },function(e,post){
if(post != null){
post.title = 'omg updated';
post.save(function(){
console.log('all done updating');
});
}
});
}
// I need all^those functions to be done before continuing to the following function:
some_function();
我已經看着異步庫,我使用的並行時,我有功能的一組號碼我需要一次運行。但我不確定如何達到預期效果。
所有這些功能可以並行運行,我只需要知道什麼時候完成。
我不知道,如果你正在尋找一個體面的庫,但如果你只需要一些微不足道的東西,你可以擁有一個計數器:開始時將它設置爲Object.keys(data).length',當它達到'0'時將'save'回調減少 - ,運行'some_function()'。 – pimvdb 2012-01-05 14:40:45
@pimvdb會工作(這正是我想的),但它只是一個小小的黑客啓動和運行,以獲得正確的方式做這件事需要一些酒吧/消息系統(不要得到過於混亂的事件和回調) – 2012-01-05 14:52:30