我有一个循环函数,我正在测试我的一个路线。问题是我称之为挂起所有网络调用,直到完成该功能。我想知道如何在处理这个时不锁定节点。表示js挂在重功能直到它完成
app.get('/populate', routes.populate);
exports.populate = function(req, res, next){
for(i = 0; i < 100000; i++){
var tmp = new Encounters();
tmp.kareoId = '1234'; //mock.Address.zipCode();
tmp.patient.fullName = 'Vartan Arabyan'; //mock.Name.findName();
tmp.patient.dob = Date.now();
tmp.patient.kareoId = '12312'; //mock.Address.zipCode();
tmp.physician.fullName = "Dr." + 'Vartan Arabyan'; //mock.Name.findName();
tmp.physician.kareoId = '12312'; //mock.Address.zipCode();
tmp.appointmentType = "NCV Upper";
tmp.appointment = Date.now();
tmp.save(function(err){
if (err) throw err;
});
if(i == 99999){
res.send(200, 'Fake Data Loaded');
}
}
};
试着在你的递增计数器保存(只有当'save'成功返回创建下一个'Encounters'实例)。实际上,您的代码会创建10000个对象并排队10000次保存。 – WiredPrairie