#silverlight #windows-phone-7 #webclient
#silverlight #windows-phone-7 #веб-клиент
Вопрос:
Я загружаю данные через каждые 5 минут с помощью веб-клиента, но иногда это показывает ошибку параллелизма.
TimerCallback call = down;
temp = new Timer(call);
temp.Change(1000, System.Threading.Timeout.Infinite);
public void down(object obj)
{
if(webflag == true)
webClient.DownloadStringAsync(new Uri(url));
webflag = false;
}
private void FeedsDownloaded(object sender, DownloadStringCompletedEventArgs e)
{
if (e.Error == null)
{
// some processing
}
webflag = true;
temp.Change(5000, System.Threading.Timeout.Infinite);
}
Я новичок, поэтому приведенный выше код, должно быть, выглядит довольно запутанным. Ценю рекомендации, спасибо!
Комментарии:
1. Можете ли вы опубликовать подробную информацию об исключении, которое вы получаете (пожалуйста, полную трассировку стека)?
Ответ №1:
Спасибо, Дрю Марш, решением было использование флага WebClient.isbusy.
if(webClient.isbusy == false)
webClient.DownloadStringAsync(new Uri(url));