我想知道如果方法已经非阻塞,我是否需要在Meteor方法中使用this.unblock()
。
这是一个人为的例子:
Meteor.methods({
myMethod() {
this.unblock();
someAPIWrapper(params, function (err, res) {
// do something with res asynchronously
});
}
});
myMethod
使用一些node.js包装器为第三方API进行HTTP调用。它是异步的。
在这种情况下,使用this.unblock()
?
答案 0 :(得分:2)
基本上没有。
this.unblock()
允许从单个客户端执行有序方法调用,以便在新光纤内继续执行,因为当前的光纤被同步操作阻止。
因此,只要您的方法体不执行阻止当前光纤的任何工作,您就不需要显式取消阻塞它。实际上,由于新的不必要的光纤的产生,可能甚至会导致其自身的开销。