Tag: async ctp

async和await是否会提高ASP.Net应用程序的性能

我最近阅读了一篇关于c#-5和新的和漂亮的异步编程function的文章。 我看到它在Windows应用程序中运行很好。 问题来了我是否这个function可以提高ASP.Net性能? 考虑这两个psudo代码: public T GetData() { var d = GetSomeData(); return d; } 和 public async T GetData2() { var d = await GetSomeData(); return d; } 在ASP.Net中有两个代码区别吗? 谢谢

现在VS 2012发布后,正确使用VS和Async的方法是什么?

由于工作限制,我需要在不久的将来继续使用Visual Studio 2010。 与此同时,我在个人编码中一直在学习Async。 最新的Async CTP是否与C#5.0的Async语言function完全一致? 是否正在安装Async CTP以正确使用VS2010的Async?

C#异步方法仍然挂起UI

我有这两种方法,我想运行异步以保持UI响应。 但是,它仍然悬挂着UI。 有什么建议? async void DoScrape() { var feed = new Feed(); var results = await feed.GetList(); foreach (var itemObject in results) { var item = new ListViewItem(itemObject.Title); item.SubItems.Add(itemObject.Link); item.SubItems.Add(itemObject.Description); LstResults.Items.Add(item); } } public class Feed { async public Task<List> GetList() { var client = new WebClient(); string content = await client.DownloadStringTaskAsync(new Uri(“anyUrl”)); var lstItemObjects […]

为什么从Async CTP / Release中删除“SwitchTo”?

我今天尝试使用SwitchTo方法切换到GUI线程,并发现我解除它的示例不起作用,只是因为该方法不存在。 然后我在这里发现了这个模糊: 我们摆脱它的原因是因为它太危险了。 另一种方法是在TaskEx.Run中捆绑你的代码…… 我的问题很简单:它为什么危险? 使用它会带来哪些特定危险? 请注意,我确实阅读了该帖的其余部分,因此我确实理解这里存在技术限制。 我的问题仍然是,如果我意识到这一点,为什么它很危险 ? 我正在考虑重新实现帮助方法来给我指定的function,但是如果有一些根本上被破坏的东西,除了有人认为它是危险的,我不会这样做。 具体来说,非常天真,这是我如何考虑实现所需的方法: public static class ContextSwitcher { public static ThreadPoolContextSwitcher SwitchToThreadPool() { return new ThreadPoolContextSwitcher(); } public static SynchronizationContextSwitcher SwitchTo(this SynchronizationContext synchronizationContext) { return new SynchronizationContextSwitcher(synchronizationContext); } } public class SynchronizationContextSwitcher : INotifyCompletion { private readonly SynchronizationContext _SynchronizationContext; public SynchronizationContextSwitcher(SynchronizationContext synchronizationContext) { _SynchronizationContext = synchronizationContext; } […]