为什么当我使用nodejs child_processes fork函数时,猫鼬保存函数不起作用

时间:2018-07-28 07:36:44

标签: node.js mongodb mongoose child-process

首先我有一个不带child_proces的nodejs项目和mongo db。它的工作原理是正确的,我获取数据并插入mongo db。

我的模式

public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc()
    .AddJsonOptions(options => {
        options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
    });
}

插入数据

const mongoose = require('mongoose');

var Schema = mongoose.Schema;

var TestSchema = new Schema({
  ID:String,
  username:String,
  full_name:String
});
module.exports = mongoose.model('Test',TestSchema);

这是正确的,但是当我使用child_process test时,保存不起作用,甚至也没有输入。

1 个答案:

答案 0 :(得分:0)

没有看到任何其他代码,我只能假设问题是该进程在MongoDB之前已经完成。尝试更改代码以等待save完成,例如

(async () => {
  try {
    const test = new Test({
      ID:1,
      username:'test_user',
      full_name:'test_full'
    });
    await test.save();
  } catch (e) {
    console.error(e);
  }
})()