3
在下面的一段代碼中,光纖按預期工作(「1」和「2」間隔2秒打印)。但是,我想從fiberFunction返回「3」並同步打印。這是行不通的。這裏是輸出:node.js光纖未來的返回值
1
Temp: undefined
2
有沒有人知道如何從纖維函數返回一個值?
var Fiber = require('fibers');
var Future = require('fibers/future'), wait = Future.wait;
function sleep(ms) {
var future = new Future;
setTimeout(function() {
future.return();
}, ms);
return future;
}
var fiberFunction = Fiber(function() {
console.log("1");
sleep(2000).wait();
console.log("2");
return "3";
});
var fiberReturn = fiberFunction.run();
console.log("Temp: " + fiberReturn);