2014-10-20 2 views
-3

다중 스레드 환경에서 다중 네트워크 요청을 생성하는 C# 프로그램을 실행하면 Request.GetRequestStream이 매우 느리고 가끔씩 몇 초가 걸리고 후속 GetResponse의 두 배가 걸리는 경우가 있습니다. Proxy이 "표준"수정 인 null로 설정된 경우에도 마찬가지입니다.GetRequestStream이 매우 느림

이 원인은 무엇입니까?

+0

물론 20 분 정도의 웹 검색에서는 속임수가 표시되지 않았습니다. –

답변

0

.NET, by default, has a default limit of 2 for simultaneous connections으로 밝혀졌습니다. 이것은 물론 심각하게 중요한 멀티 스레딩을 수행하는 모든 응용 프로그램을 제어하고 지연은 GetRequestStream 호출에 나타납니다.

은 "수정"더 합리적인 뭔가 기본 제한을 변경하는 것입니다

ServicePointManager.DefaultConnectionLimit = newConnectionLimit; 

VM웨어에서 Windows를 실행하는 내 구루병 맥은 20 OK의 값을 처리하는 것,하지만 일부주의를 촬영해야

큰 숫자는 더 많은 리소스를 추가 성능없이 묶을 수 있습니다.

+0

확실한 답변이 하나 있습니다. – Xela

+0

정보를 찾을 수 있도록 질문/답변을 제출했습니다. 위의 "속보"는 약 20 분 동안 검색 할 때 팝업되지 않았습니다. –