// GET api/<controller>
[HttpGet]
[Route("pharmacies/{pharmacyId}/page/{page}/{filter?}")]
public CartTotalsDTO GetProductsWithHistory(Guid pharmacyId, int page, string filter = null ,[FromUri] bool refresh = false)
{
return delegateHelper.GetProductsWithHistory(CustomerContext.Current.GetContactById(pharmacyId), refresh);
}
$.ajax({
url: "/api/products/pharmacies/<%# Farmacia.PrimaryKeyId.Value.ToString() %>/page/" + vm.currentPage() + "/" + filter,
type: "GET",
dataType: "json",
success: function (result) {
vm.items([]);
var data = result.Products;
vm.totalUnits(result.TotalUnits);
}
});
我见过一些开发人员以这种方式实现前面的操作:
// GET api/<controller>
[HttpGet]
[Route("pharmacies/{pharmacyId}/page/{page}/{filter?}")]
public async Task<CartTotalsDTO> GetProductsWithHistory(Guid pharmacyId, int page, string filter = null ,[FromUri] bool refresh = false)
{
return await Task.Factory.StartNew(() => delegateHelper.GetProductsWithHistory(CustomerContext.Current.GetContactById(pharmacyId), refresh));
}
不过,不得不说,GetProductsWithHistory()是一个相当长的操作。考虑到我的问题和上下文,使webAPI操作异步对我有什么好处?
在您的特定示例中,该操作根本不是异步的,所以您所做的是异步而不是同步。您只是释放了一个线程并阻塞了另一个线程。没有理由这样做,因为所有线程都是线程池线程(与GUI应用程序不同)。
在我关于“同步上的异步”的讨论中,我强烈建议,如果您有一个内部同步实现的API,那么您不应该公开一个简单地将同步方法包装在task.run
中的异步对应体。
我应该公开同步方法的异步包装吗?
问题内容: 我在创建的Web API中执行以下操作: 通过以下方式通过Jquery Ajax调用完成对此Web服务的调用: 我已经看到一些开发人员以这种方式实现了先前的操作: 不过,得说GetProductsWithHistory()是一个相当长的操作。考虑到我的问题和上下文,使webAPI操作异步将给我带来什么好处? 问题答案: 在您的特定示例中,该操作根本不是异步的,因此您正在执行的操作是异步
本文向大家介绍nodejs中require方法是同步还是异步操作?为什么?相关面试题,主要包含被问及nodejs中require方法是同步还是异步操作?为什么?时的应答技巧和注意事项,需要的朋友参考一下 同步 因为经常用到模块,并且一般都在模块顶端引入,所以把require做成同步,有助于代码整洁有序,增强可读性。 但是,I/O密集的地方尽量不要用require。所有的同步,都会阻塞Node,直到
我刚刚发现,在react函数都是异步的,或者在调用它的函数完成后调用。 现在这两样东西很难消化 在博客中,函数是在函数内部调用的,但是触发函数的原因并不是被调用函数所知道的。 他们为什么要让异步,因为JS是单线程语言,而且这个setState不是WebAPI或服务器调用,所以只能在JS的线程上完成。他们这样做是为了使重新呈现不会停止所有事件侦听器和其他东西,还是有其他设计问题。
概述 定时器 Promise 对象
下面的这些操作符属于单独的rxjava-async模块,它们用于将同步对象转换为Observable。 start( ) — 创建一个Observable,它发射一个函数的返回值 toAsync( ) or asyncAction( ) or asyncFunc( ) — 将一个函数或者Action转换为已Observable,它执行这个函数并发射函数的返回值 startFuture( ) — 将
尽管我花了几天时间研究了关于基于任务的异步模式(TAP)、async和await的MSDN文章,但我仍然对一些更精细的细节感到有点困惑。 我正在为Windows Store应用程序编写一个记录器,我希望同时支持异步和同步日志记录。异步方法跟随TAP,同步方法应该隐藏所有这些,并且看起来和工作起来像普通方法一样。 这就是异步日志的核心方法: 这看起来是正确的,但它并不起作用。整个程序永远冻结。 版本