비동기가 가능한 httpwebrequest와 관련된 많은 부분이 있습니다. 나는이 주제에 관해 여기서 질문을 읽은 것을 기억하지만 더 이상 찾을 수없는 것 같습니다. 그래서 다시 질문 할 것입니다. 다음 중 가장 많은 것을 얻은 다음 (말하자면).비동기 httpwebrequest의 부분
BeginGetRequestStream/EndGetRequestStream
그러면 BeginWrite/EndWrite
BeginGetResponse/EndGetResponse
그러면 BeginRead/EndRead
내가 BeginGetResponse가 BeginGetRequestStream와 결합되어야 함을 이해합니다. 그 사실을 다시 강조 할 필요가 없습니다.
내가 조사한 결과 BeginRead/EndRead가 가장 큰 잠재력을 갖고있는 것처럼 보입니다. 이것은 충격으로 조금왔다. 그것은 EndGetResponse가 상당히 빨리 돌아오고 "첫 접촉"과 실제 데이터가 읽히고 난 후 상당한 지연이있는 것 같습니다. 나는 몇 가지 헤더를 즉시 얻었고, 그 다음에는 긴 지연과 내가 원하는 데이터가 뒤따라 왔음을 확신한다.
내 진짜 질문은 다음과 같습니다. BeginGetResponse에 문제가 있습니까? 아니면 여기에 참된 가치있는 플레이어입니까? BeginRead?
항상 감사드립니다.
전체 httprequest (스트림 읽기 포함)를 다른 스레드 (위임을 통해 또는 다른 방법으로)로 이동하는 것을 말하고 있습니까? 나는 이러한 것들을 피하려고 노력하고 있습니다. 실제로 응답 시간을 얻는 것보다는 멀리있는 쓰레드를 재활용하고 싶습니다. – aepheus
그건 내가 세 번째 단락의 두 번째 문장에서 언급 한 것입니다. 다음 아이디어는 스레딩에 전혀주의를 기울이지 않지만 응답 성은 다른 방식으로 얻습니다. 다른 방법으로 많은 이득이 있을지 확신하지 못합니다. 항상 처리 또는 차단중인 스레드가 있거나 스레드 한계를 때리는 문제입니까? –