Подскажите по циклу и потокамю

Irbis

Client
Регистрация
02.03.2014
Сообщения
195
Благодарностей
120
Баллы
43
Всем привет, подскажите, пожалуйста, по такому вопросу.
Есть код:
Код:
// В этот метод заходят потоки.
public void MyTask()
        {
            string key;
            string build;
            WebClient client = new WebClient();
               //Здесь перебирается коллекция.
                while (Program.All.Count != 0)
                {
                    //Program.All - это коллекция с ключами.
                    key = Program.All[0];
                    Program.All.RemoveAt(0);
                    // Здесь конструируется строка URL.
                    build = Build(key);
                    // Здесь отправляется запрос.
                    Checks(key, build, client);
                }
                client.Dispose();
            }
Подскажите где лучше поставить блокировку коллекции, чтобы потоки отправляли запросы и брали элементы коллекции по очереди?
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
key = Program.All[0];
Program.All.RemoveAt(0);
Я бы вот этот участочек лочил
 
  • Спасибо
Реакции: Irbis

Irbis

Client
Регистрация
02.03.2014
Сообщения
195
Благодарностей
120
Баллы
43
Я вот тоже к этому варианту склоняюсь. Только потоки проходят while, приходится блок try catch писать. Может кто подскажет как без блока обойтись?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)