我正在将一个库移植到.NET核心并最大化可移植性,我需要消除对System.Threading.Thread和Thread.Sleep的依赖.什么是替代品呢?
我想在列表框中添加一些文本Task,我只需使用一个按钮并在点击事件中放置此代码:
TaskScheduler uiScheduler = TaskScheduler.FromCurrentSynchronizationContext();
Task.Factory.StartNew(() =>
{
for (int i = 0; i < 10; i++)
{
listBox1.Items.Add("Number cities in problem = " + i.ToString());
System.Threading.Thread.Sleep(1000);
}
}, CancellationToken.None, TaskCreationOptions.None, uiScheduler);
Run Code Online (Sandbox Code Playgroud)
但是直到for循环结束它才能工作并且UI被锁定.
问题出在哪儿 ?
谢谢 :)