我开始在 node.js 中编写服务器并想知道我是否以正确的方式做事......
基本上我的结构类似于以下伪代码:
function processStatus(file, data, status) {
...
}
function gotDBInfo(dbInfo) {
var myFile = dbInfo.file;
function gotFileInfo(fileInfo) {
var contents = fileInfo.contents;
function sentMessage(status) {
processStatus(myFile, contents, status);
}
sendMessage(myFile.name + contents, sentMessage);
}
checkFile(myFile, gotFileInfo);
}
checkDB(query, gotDBInfo);
一般来说,我想知道这是否是为 node.js 编码的正确方法,更具体地说:
1) VM 是否足够聪明,可以在每个回调之间“同时”运行(即切换上下文),以免被大量连接的客户端挂断?
2)垃圾回收运行时,如果最后一个回调(processStatus)完成,是否会完全清除内存?