gpt4 book ai didi

javascript - PageMethods 减慢了进程并按降序工作

转载 作者:行者123 更新时间:2023-11-28 19:53:48 25 4
gpt4 key购买 nike

我的页面上有很多页面方法。每种方法都用于从数据库中获取数据。我按照以下方式订购了它们。但我的问题是成功方法之外但主函数内部的行在页面方法完成该过程之前正在工作

function check_valid()
{
// some code
Pagemethod1
function suc1()
{
//some code
PageMethod2
function suc2()
{
//some code
Page Method3
function suc3()
{
//some code
}
function err3(){}
}
function err2(){}
}
function err1(){}
return true; //this line is working before the pagemethods complete the process
}

最佳答案

我不熟悉“PageMethods”,但听起来这些函数都是异步的,因为它从远程数据库接收数据。由于 JavaScript 在单个线程中运行,因此异步进程通常可以选择附加一个回调函数,该函数会在进程完成后触发。这允许 javascript 在等待缓慢的数据库调用时执行其他操作,例如返回 true,从而解释您的观察结果。

相反,请在数据库 API 中使用回调模式:

editDatabase(args*, function() {
//Stuff to do database call is complete
});

或者,您的数据库 API 可能会使用事件模式:

var myDb = new DB();
myDb.edit(args*)
myDb.bind('complete', function() {
//Stuff to do database call is complete
});

或者,您的数据库 API 可能会使用 Promise,您可以阅读 here

如果您正在从同步语言迁移,这些模式可能需要一些时间来适应,但它们对于 JavaScript 来说是必不可少的。您还可以找到有关 JavaScript 异步方面的良好指南 here .

关于javascript - PageMethods 减慢了进程并按降序工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22952891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com