Параллельные запросы

Igorii

Client
Регистрация
21.02.2015
Сообщения
371
Благодарностей
297
Баллы
63
Друзья, помогите с кодом, на форуме нашёл такой снипет:
C#:
var vkUrls = project.Lists["VkUrlList"]; //название списка
int potoki = 10;//количество потоков
int c = vkUrls.Count;
Parallel.For(0, c, new ParallelOptions { MaxDegreeOfParallelism = potoki }, x =>   
{
    string url = string.Empty;
    lock(SyncObjects.ListSyncer)
    {
        url = vkUrls[0];
        vkUrls.RemoveAt(0);
    }
  string res = string.Empty;
    for(int i = 0; i < 3; i++)     
    {
              
       res = ZennoPoster.HttpGet(     
            url,       
            "",//proxy       
            "UTF-8",     
            ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,     
            50000,     
            "",     
            project.Profile.UserAgent,     
            true,       
            3     
            );
          
              
        if(!string.IsNullOrEmpty(res))     
        {                   
            break; 
        }
              

}
});
Он параллельными запросами проходит по ссылкам из списка. Как его изменить, чтобы каждый поток из ответа парсил значение по регулярке и складывал в список?
Ну или хотя бы, просто скрадывал в список ответы, а из списка сам уже распаршу
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 719
Баллы
113
такая сложная тема - параллельное выполнение и такой странный вопрос про самые элементарные действия со списком....
список List надо привязать в начале наподобие vkUrls
добавляется строка в список List.Add(res);
 
  • Спасибо
Реакции: Igorii

Igorii

Client
Регистрация
21.02.2015
Сообщения
371
Благодарностей
297
Баллы
63
такая сложная тема - параллельное выполнение и такой странный вопрос про самые элементарные действия со списком....
список List надо привязать в начале наподобие vkUrls
добавляется строка в список List.Add(res);
Спасибо! Но, к сожалению, C# для меня пока как китайская грамота, потому, буду очень благодарен, за готовый снипет.
Для знающего человека, вопрос, действительно, видимо, звучит странно)
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 719
Баллы
113
Спасибо! Но, к сожалению, C# для меня пока как китайская грамота, потому, буду очень благодарен, за готовый снипет.
Для знающего человека, вопрос, действительно, видимо, звучит странно)
не зная броду, лезу в воду ?
чем обычный кубик get запроса плох, что надо делать параллельные запросы на совершенно непонятном языке программирования?
разработчики еще не внедрили средство для c# кода, которое спасает от кода который вешает/ребутит систему. подумайте, оно вам надо ?
 

Igorii

Client
Регистрация
21.02.2015
Сообщения
371
Благодарностей
297
Баллы
63
не зная броду, лезу в воду ?
чем обычный кубик get запроса плох, что надо делать параллельные запросы на совершенно непонятном языке программирования?
разработчики еще не внедрили средство для c# кода, которое спасает от кода который вешает/ребутит систему. подумайте, оно вам надо ?
Обычный кубик, в моём случае, в один поток очень долго перебирает весь список, а в многопотоке,
как раз вешает систему. Почему, - хз, но это другой вопрос. Выше приведённый же код, отлично отрабатывает, но требует доработки. Потому - надо)
 

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