Есть несколько запросов на загрузку, которые я хочу обслуживать один за другим, и по этой причине я использую очередь.Вот список, который заполняется из разных сценариев в разное время
public Queue<WebDownloader> webDownloaderQ;
Открытый метод позволяет разным сценариям / ресурсам динамически заполнять очередь в разное время:
public void EnqueABDownloading(WebDownloader abToDownload)
{
singleAbLoader.Enqueue(abToDownload);
}
Загрузка начинается быстро, так как она обнаружила даже один объект queue (Помните, что за это время очередь может быть увеличена),
public void StartDownloading()
{
//while (singleAbLoader.Count > 0)
//{
// singleAbLoader.
//}
for (int i = 0; i < singleAbLoader.Count; i++)
{
singleAbLoader[i].//this is not supporting unable to call my method
//I want to call one of the function (startdowloaind) of WebDownloader before the deque
}
}
Я пытался написать выше функцию загрузки, но проблема в том, что я не знаю каксделать это.Я пытался использовать индекс с объектом, который, как он говорит, не может применить индексирование к выражению типа Queue.
РЕДАКТИРОВАТЬ:
Помните : Iхотите вызвать одну из функций (StartDowloaind
) из WebDownloader
перед тем, как вытеснить объект.
Я хочу сначала поставить запрос в очередь, причина в том, что для загрузки каждого запроса потребуется некоторое время.Следовательно,
сначала поставьте в очередь запрос на загрузку
, затем проверьте, работает ли цикл загрузки или нет, если нет, инициируйте цикл
Как только загрузка завершится, исключите запрос из очереди.