Node.js脚本不会退出
为什么下面的代码在运行全部3行之后不会导致节点退出进程?
var monq = require('monq') var client = monq('mongodb://remote.db.com:27017/mydB') var queue = client.queue('users')
如果第三行不执行,脚本会退出。
您必须等到asynchronous操作(处理队列)完成,然后调用process.exit()
才能结束脚本的执行。 请参阅: https : //nodejs.org/api/process.html#process_process_exit_code
看起来,直到client.queue('users')
被调用之前,到Mongo的底层连接才build立client.queue('users')
。 monq有一个client.close()
方法来closures它的db连接。 有几个MOD可以testing这个。
var monq = require('monq') var client = monq('mongodb://localhost:27017/mydB') var queue; setTimeout(function() { // create the queue which establishes the connections queue = client.queue('users'); setTimeout(function() { // close connection client.close(); }, 5000) }, 5000);
- ForBiddenError在Node.js / Express.js / Angular2中
- node.js可以像CouchApp那样执行从CouchDB获取的JavaScript函数吗? 怎么样?
- TypeScript中的Mongoose方法范围
- Ember模型和SQL – 在服务器上或通过Ember关系连接表?
- npm依赖关系不在package.json中 – 由于缺less注释?
- 使用adm-zip从zip中读取json文件
- javascript(node.js)| 在callback函数的范围内使用外部参数
- 提前返回和callback:返回callback?
- heroku的节点:! Heroku推送被拒绝,没有检测到雪松支持的应用程序