Почему RestSharp ограничивает число одновременных подключений к одному серверу до 2? - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь запустить несколько потоков параллельно, каждый из которых запускает свой собственный клиент RestSharp и все подключаются к одному и тому же серверу для загрузки результатов в файлы с помощью метода DownloadData RestSharp.

Хотя все потоки запускаются и вызывают клиент параллельно, только 2 файла одновременно начинают получать данные. Когда по крайней мере один завершается, только тогда другие файлы начинают расти, каждый раз с максимальным воздействием 2 в любой момент времени.

1 Ответ

1 голос
/ 26 апреля 2019

Я обнаружил, что с помощью WebClient можно установить максимум 2 одновременных подключения по умолчанию к одному и тому же серверу (см. Как программно удалить ограничение 2 подключений в WebClient )

Один изрешения, которые я нашел там, также могут быть использованы с RestSharp, который устанавливает System.Net.ServicePointManager.DefaultConnectionLimit.В приведенном ниже примере это значение равно 10. Просто убедитесь, что DefualtConnectionLimit установлен перед созданием клиента:

System.Net.ServicePointManager.DefaultConnectionLimit = 10;
var Client = new RestClient("https://someURL");   
...