【发布时间】:2012-10-17 21:57:20
【问题描述】:
假设我有这个代码:
function fn(n)
{
return function()
{
for(var k = 0; k <= 1000; ++k) {
fs.writeSync(process.stdout.fd, n+"\n");
}
}
}
setTimeout(fn(1), 100);
setTimeout(fn(2), 100);
1 和 2 是否可以互换打印到 stdout(例如 12121212121...)?
我已经对此进行了测试,但它们并没有互换使用,即1111111...222222222...,但很少有测试无法证明,我担心会发生类似111111211111...2222222... 的事情。
换句话说:当我在 Node 中注册一些回调和事件处理程序时,两个回调可以同时执行吗?
(我知道这可以通过启动两个进程来实现,但是我们将有两个 stdout 并且上面的代码将被拆分为单独的文件等)
另一个问题:忘记节点并笼统地说:在单个进程上的任何语言中,是否有可能同时执行两个函数(即以与上述相同的方式)?
【问题讨论】:
标签: node.js