腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
使用
ConfigureAwait
(
false
)
或
Task.Run
避免
阻塞
UI
线程
、
、
、
就像这样: button1.Click += async(sender, e) => bool a = await
Task.Run
(async () => { return await(
false
);} 据我所知GetAsync不会
阻塞
我的
UI
线程
,因为在下面它
使用
了一个方法,使得它可能运行在不同的
线程
上
Task.Run
或
任何其他允许这样做的方
浏览 72
提问于2021-02-25
得票数 -1
回答已采纳
4
回答
理解异步/等待和
Task.Run
()
、
、
、
、
(() => LoadImage(postInfo, holder, imageView).
ConfigureAwait
(
false
)); 然后,在我的LoadImage函数中,我执行了如下操作:(
false
); if(byteArray.Length我所了解到的是,在配置等待设置为
false
后,代码不会在Syn
浏览 0
提问于2018-04-24
得票数 23
回答已采纳
1
回答
添加孩子时xamarin滚动视图跳转
、
、
var results = await
Task.Run
(()=>FetchResults<List<CPost>>()); } //AddRow();// <- jumpy//calling this as a task resu
浏览 2
提问于2019-10-14
得票数 1
回答已采纳
2
回答
await Dispatcher.InvokeAsync vs Dispatcher.Invoke
、
、
、
、
这些方法中的哪一个可以
避免
阻塞
线程
池中本来可以执行工作的
线程
,如果有人在程序中的其他地方
阻塞
了
UI
线程
,那么哪一个最不可能导致死锁?(); }).
ConfigureAwait
(
false
); { //On
UI
Thread这可能会导致两个
线程
旋转起来。如果程序中
浏览 75
提问于2021-06-20
得票数 0
1
回答
对异步函数的调用结果是否会无限期地导致块?
、
、
、
、
SomeClass details = await ReturnARunningTask(); }} {}我
浏览 1
提问于2015-02-03
得票数 6
回答已采纳
4
回答
桌面应用中同步/异步问题的更好解决方案?
、
、
、
在这种情况下,此调用将
阻塞
UI
线程
2秒。我没有选择更改DoSomethingAsync中的代码。;)运行在某些ThreadPool
线程
上,而不是
UI
线程
上。}
UI
线程
不会被
阻塞
,我不需要做任何事情。当我看到
UI
在某些情况下冻结时,我可能会在一些调查之后发现这个问题(异步方法中任何等待之前的平均CPU绑定计算)。没有Wait()
或
Result,这是很容易找到的,这是更大的问题。这就是为什么我不想
浏览 12
提问于2022-01-26
得票数 0
回答已采纳
1
回答
使用
异步任务时,Wpf读取文件会阻止
UI
线程
、
嗨,我有一个命令,可以读取文件并将它们放在富文本块中,但我想出了一个问题-该命令是
阻塞
UI
线程
。ProcessedRawEventData)log; this.DataDisplay = await <
浏览 43
提问于2021-04-20
得票数 0
6
回答
“‘await”有效,但调用task.Result会挂起/死锁
、
、
、
、
我有以下四个测试,最后一个在运行时挂起。为什么会发生这种情况:public void CheckOnceResultTest() Assert.IsTrue(CheckStatus().Result);public async void CheckOnceAwaitTest() Assert.IsTrue(await CheckStatus());public async void CheckStatusTwiceAwaitTest() Assert.IsTrue(await CheckStatus
浏览 1
提问于2013-06-22
得票数 140
回答已采纳
1
回答
为什么等待
阻塞
Dispatcher.Invoke?
、
、
、
为什么它会
阻塞
?我知道一个
使用
Dispatcher.PushFrame()的解决方案,但仍然如此。这是一个经典的“不要在异步代码上
阻塞
”类型的问题吗?{ }); await t.
ConfigureAwait
(
false
);} UPD:现在它在主
线程
上同步等待,并
使用
线程
浏览 0
提问于2017-09-22
得票数 0
3
回答
如何在单击时更改TextBlock文本?
、
、
我想在WPF中的Button_Click期间更改TextBlock的文本。我试过了,但不起作用:{
浏览 21
提问于2018-02-27
得票数 2
回答已采纳
2
回答
有理由在
Task.Run
中运行异步代码吗?
、
public async Task SaveStuff() await
Task.Run
(() => SaveStuffAsync().
ConfigureAwait
(
false
));await
Task.Run
(() => SendToExternalApiAsync().
ConfigureAwait
(
false
));{ await DbContext.SaveChangesA
浏览 0
提问于2019-08-07
得票数 5
回答已采纳
2
回答
Task.Yield、
Task.Run
和
ConfigureAwait
(假)有什么区别?
、
、
、
、
同时,
Task.Run
和
ConfigureAwait
(
false
) 在一个新的
线程
池
线程
上运行一个任务,如果调用方没有等待该方法,它将再次强制调用者继续。我无法理解Task.Yield和运行一个新
线程
池
线程
之间的区别,因为在它返回给调用者之后,它将继续执行该方法的其余部分,这本质上是一样的。post建议,Yield和Task.Factory.StartNew (实际上是
Task.Run
的旧版本)可以互换
使用
,这在我看来是令人困惑的。
浏览 6
提问于2015-07-04
得票数 13
回答已采纳
2
回答
什么时候正确
使用
Task.Run
,什么时候只是异步等待
、
、
、
我想询问您对何时
使用
Task.Run
的正确架构的看法。在我们的WPF .NET 4.5应用程序中,我正在经历一个滞后的
UI
(与卡利伯恩微框架)。
Task.Run
(async () => ... )。
使用
async await并不会阻止
UI
,但是它仍然在
UI
线程
上运行,因此它使其滞后。 或者,我应该只包装内
浏览 7
提问于2013-08-02
得票数 404
回答已采纳
4
回答
Task.Run
是否被认为是ASP .NET MVC Web应用程序中的不良实践?
、
、
、
、
过去,一些团队成员
使用
Task.Run
,为了加快calculations.Since在ASP .NET MVC
或
Web控制器中启动额外
线程
的速度,认为这是一种糟糕的实践(该
线程
不为IIS所知,因此在AppDomain回收=>上没有考虑--参见),他们
使用
了
ConfigureAwait
(
false
)。double param1, double param2) // CalculateSync is synchrono
浏览 7
提问于2015-11-17
得票数 60
回答已采纳
2
回答
在C#中等待后台
线程
、
、
ExecuteInBackgroundThread().Wait(); { } { {
浏览 5
提问于2014-09-18
得票数 0
回答已采纳
2
回答
阻塞
UI
线程
的方法
、
、
、
、
我遇到的唯一问题是该方法显然没有异步运行,并且
阻塞
了我的
UI
线程
。CreateThrottledCallback({ if (callFin
浏览 35
提问于2018-06-09
得票数 1
回答已采纳
2
回答
如何将同步上下文/任务调度器替换为TaskCompletionSource.Task中的另一个上下文/任务调度程序以替代
ConfigureAwait
(
false
)?
、
、
、
、
return taskCompletionSource.Task;我的库的任何用户都可以这样调用MyLibraryMethodAsyncVeryLongRunningMethod();{} 问题来了-- VeryLongRunningMethod将在taskCompletionSource.SetResul
浏览 5
提问于2016-01-07
得票数 2
回答已采纳
1
回答
如何抑制捕获当前ExecutionContext的SynchronizationContext?
、
、
、
用户单击button1,导致
UI
框架在
UI
线程
上调用button1_Click。然后,代码启动一个工作项,在ThreadPool上运行(通过
Task.Run
)。
ConfigureAwait
(
false
),可能是因为它位于库中
或
其他我无法控制的代码中。如果从
UI
上下文中,我
使用
的是一个不
使用
ConfigureAwait
(
false
)并在
UI
线程
上完
浏览 8
提问于2013-10-23
得票数 0
回答已采纳
4
回答
非
阻塞
线程
、
我正在重构一个C#项目,该项目被几个完整的应用程序
使用
。该类与硬件交互,执行某些命令通常需要数百毫秒
或
更长时间。在许多情况下,我将替换前程序员编写的Thread.Wait()调用,以执行这些操作。现在,该项目为
使用
它的几个项目提供的一些函数需要数百毫秒
或
更长时间才能执行,并将一个值返回给程序必须
使用
的调用程序。我的问题是,在这个项目中是否可以
使用
某种机制使这些调用在主
线程
之外的某个
线程
上执行和返回?换句话说,我希望从这个项目的角度使这些方法非
阻
浏览 3
提问于2013-08-29
得票数 1
3
回答
“异步任务”与“返回
Task.Run
”
、
、
我刚开始
使用
异步/等待c#模型,并试图了解这两个选项是否本质上是相同的:{ return
Task.Run
(async () =
浏览 3
提问于2020-06-17
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C#并发编程之异步编程
NET Core 中的并发编程
StackExchange.Redis性能调优
如何优化Android异步请求服务器数据?
Android开发之如何避免ANR
热门
标签
更多标签
云服务器
ICP备案
对象存储
即时通信 IM
实时音视频
活动推荐
运营活动
广告
关闭
领券