Cambiar un manexador de proxy de .NET HttpClient xa usado pode fallar
Manteña estable o enrutamento de proxy de .NET durante solicitudes simultáneas en lugar de modificar propiedades do manexador despois do uso.
Configure o enrutamento do manexador de .NET antes do primeiro uso. Establecer Proxy ou UseProxy despois de que comezasen as solicitudes pode lanzar InvalidOperationException.
| Cambio | O que non proporciona |
|---|---|
| Reescribir unha propiedade dun manexador usado | Un conmutador de ruta local á solicitude compatible |
Mutar o WebProxy.Address asignado | Selección atómica para solicitudes simultáneas ou movemento de conexións agrupadas |
Colocar un valor actual global dentro de IWebProxy | Unha política de concorrencia definida só movendo o estado |
Para un conxunto limitado de rutas, manteña clientes/grupos de manexadores reutilizables asociados a esas políticas e seleccione o cliente antes de enviar. Un IWebProxy personalizado pode tomar decisións deliberadas e seguras para a concorrencia, pero un valor compartido mutable segue sendo ambiguo.
Limite os clientes de ruta e o traballo en curso por destinos, duración, vida útil da conexión e límites do sistema operativo. Máis rutas engaden pools/sockets, polo que o número de proxies dunha proba de referencia non é unha garantía de capacidade.
Un novo intento a través doutro proxy é outro intento limitado co seu propio cliente/resultado. Para os envíos, conserve a posibilidade de que a primeira solicitude se procesase antes de que desaparecese a súa resposta.