簡體   English   中英

在Meteor.js中調用同步函數

[英]Calling a Synchronous function in Meteor.js

當您在Meteor服務器上調用同步函數時,它是否會阻塞整個服務器,直到收到回調為止?

queueTask = function(callback) { ... }
queueTaskSync = Meteor._wrapAsync(queueTask)
queueTaskSync(function(results) {
    console.log('callback returns after 10 seconds')
    Results.insert(results)
})

換句話說,如果回調需要10秒鍾才能返回,這是否意味着服務器在10秒鍾內無法執行其他任何操作?

這取決於此代碼在哪里。 如果代碼在服務器上的Meteor.methods ,則將阻止從同一客戶端對流星的其他調用,但不會阻止其他流星,因為它們位於不同的光纖中。

您可以在方法中使用this.unblock()來繞過此this.unblock() ,以確保下一個方法調用在新的光纖中運行,從而使它們更像並發。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM