如果我打电话Directory.GetFiles()
大约需要 10 秒才能完成,我如何(同时)显示动画加载文本?我有一个班级来处理动画,但我不确定这是否可以通过单个函数调用(而不是循环)来实现。
问问题
741 次
1 回答
1
您可以使用任务
class Program
{
static void Main()
{
var tokenSource2 = new CancellationTokenSource();
var ct = tokenSource2.Token;
var task = Task.Factory.StartNew(() =>
{
//Replase with yor animation code
int i = 0;
while (true)
{
Console.WriteLine(i++/10.0);
Task.Delay(100).Wait();
if (ct.IsCancellationRequested)
{
return;
}
}
// end of replace
}, tokenSource2.Token);
Task.Delay(10000).Wait(); //replace with Directory.GetFiles()
tokenSource2.Cancel(); // replace with animation stop code
}
}
于 2013-07-09T14:49:32.837 回答