使用“await Task.Delay”睡眠

时间:2013-07-01 17:21:37

标签: c# webclient

我想等待WebClient免费,所以我创建了一个等待WebClient的IsBusy属性为false的小代码

代码:

public class WebAgent : WebClient
{
    public async Task<string> GetStringAsync(string uri, bool useDelay)
    {
        if (IsBusy) await WaitForFreedom();
        return await DownloadStringTaskAsync(new Uri(uri));
    }

    public async Task WaitForFreedom()
    {
        while (IsBusy)
            await Task.Delay(100);
    }
}

所以我想知道这是实现这一目标的好方法还是有更好的方法来等待webclient自由,所以我没有得到并发错误?

0 个答案:

没有答案