问题标签 [pageasynctask]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
644 浏览

c# - 使用 BuildManager.CreateInstanceFromVirtualPath 创建页面时,PageAsyncTasks 不等待完成

我有一个页面,我添加了一个异步任务,使用Page.RegisterAsyncTask. 如果页面可以正常访问,例如通过导航到“/foo.aspx”,那么一切都按预期工作。该应用程序有一些相当复杂的路由,在某些情况下,页面是从一个调用BuildManager.CreateInstanceFromVirtualPath("~/foo.aspx", typeof(Page)) as IHttpHandler然后调用ProcessRequest结果处理程序的处理程序创建的。看起来页面在完成之前没有等待注册任务完成。

在这种情况下,如何让页面等待异步任务完成?

复制样本:

测试页.aspx:

测试处理器.cs

路由(在 RouteConfig.cs 中添加):

重现步骤:

  1. 导航到 TestPage.aspx,单击按钮并按预期显示消息
  2. 导航到 /TestHandler,您应该会看到相同的页面,但是如果您单击该按钮,则不会出现该消息。
0 投票
2 回答
278 浏览

android - 从导航抽屉的每个列表项发出请求时,AsyncTask 执行需要在同一片段中取消

我的问题是我需要从 Navigation Drawer 的每个 List Item中打开SAME FRAGMENT,并且当片段显示时,如果 AsynTask 执行正在进行,那么AsyncTask 执行应该被取消。

我该怎么做?

我尝试了很多方法来实现这一点,但每次都失败了。

我使用了 asynctaskObject.cancel(true);

所以任何人都可以回答。我希望我能得到结果。

提前致谢。:)

0 投票
1 回答
59 浏览

c# - PageAsyncTask - 当它超时时,我需要整理长调用吗?

我正在使用 PageAsyncTask 在 c# (.Net 3.5) 中调用 WCF 服务。

我的问题是,我是否需要在超时时整理代理,或者这是不必要的,因为它是在 Using 块中创建的?

这是一些伪代码,其中包括一些超时时的“整理”代码:

0 投票
2 回答
2411 浏览

c# - PageAsyncTask 不阻塞页面加载

我正在尝试找到一种在 webforms 页面的 Page_Load 方法中执行异步方法的方法,而不会阻止用户的页面加载。我正在使用以下代码:-

后面的 C# 代码

ASPX 视图

理想情况下,页面应该为用户加载,然后在异步任务完成后,更新标签。因此,在设置标签文本之前,该页面应该可见 5 秒。这可以使用 PageAsyncTask 吗?

0 投票
1 回答
417 浏览

c# - PageAsyncTask Timeout - 如何停止执行异步代码

我正在尝试在经典的 ASP.NET 网页中实现异步调用。

我按照我在这里找到的说明进行操作,我可以让它异步调用,但我不知道如何在请求超时时取消异步方法的执行(我可以通过暂停执行我的断点处的代码)。

到目前为止,我的代码如下:

我遇到的主要问题是,当我调用外部服务时,代码可能会在异步方法中的某个点“挂起”,并且在某些情况下它可能会停止响应。

即使我尝试 EndInvoke 请求,异步代码仍然运行。

任何帮助,将不胜感激。

0 投票
1 回答
565 浏览

asp.net - 如何在 C# 4.0 中将任务转换为 PageAsyncTask?

以下不编译。这适用于4.0aspx WebForms 页面中的异步调用。

由于我无法使用所有不相关的 4.5 材料,谷歌搜索让我失望了。我的意思是,我不能使用 4.5。

如果我只使用没有 RegisterAsyncTask 的任务,我会收到警告说 WebForms 不支持裸任务,或者它挂起。

0 投票
0 回答
86 浏览

asp.net - PageAsyncTask 使线程混乱

我有一个类别页面(经典 ASP.NET),它从数据库(MS SQL Server)加载产品。每个产品(实现为 userControl)都有自己的数据绑定控件。我想并行加载这些产品控件,所以我创建了一个帮助模块来创建 PageAsyncTask 并注册它。

来自 UserControl 的调用非常简单:

Sub BindData 查询 DB 并将结果绑定到转发器或 ListView。

它实际上是并行工作的,但有时会产生异常,例如 Control not found Stack empty

为此, OnEnd 中的 catch 可以正常工作。

更糟糕的是,有时它会从正确的产品中获取部分数据,并从任何随机产品中获取部分数据,而不会出现任何错误;(

技术细节:
.NET 4.5
httpRuntime targetFramework="4.5"
<%@ Page Async="true"

有什么建议么?
谢谢你。

0 投票
0 回答
1508 浏览

asp.net - RegisterAsyncTask 不在 ASP.Net Web 表单页面中运行异步任务

我在 ASP.Net Web 表单应用程序中有一个登录页面。成功登录后,它会执行一些耗时的数据库操作,这会减慢登录过程,所以我想异步运行这些操作。

我正在尝试使用 RegisterAsyncTask 等以推荐的方式执行此操作。我在 aspx 文件中设置了 @Page Async="true" 并在 aspx.vb 文件中实现了以下代码(缩减以显示基本元素) :

但是 DoExpensiveDbCheck 函数永远不会运行(函数开头的断点永远不会命中),并且 Session("DbValueForUseLater") 永远不会设置。

我想它可能没有运行,因为登录功能通过重定向到应用程序的主页完成,所以我添加了 Page.ExecuteRegisteredAsyncTasks() 以防万一,但这没有什么区别。

有趣的是,如果我为 DoExpensiveDbCheck 创建一个任务而不是使用 RegisterAsyncTask,并在此任务上执行一个等待,那么应用程序将完全冻结,并且 DoExpensiveDbCheck 中的断点再次不会被命中。

有谁知道我在这里做错了什么?