title: Timeout when using HttpCompletionOption.ResponseHeadersRead?
body: <p>Wondering if anyone could help me in understanding timeouts when HttpCompletionOption.ResponseHeadersRead is used.  Given the code below:</p>
  <pre><code>using (HttpClient client = new HttpClient())
  {
      client.Timeout = TimeSpan.FromSeconds(5);
      const string url = &quot;https://url&quot;;
      using (HttpResponseMessage response = await client.GetAsync(url, HttpCompletionOption.ResponseHeadersRead))
      using (Stream stream = await response.Content.ReadAsStreamAsync())
      {
          ... do some processing on stream ...
      }
  }
  </code></pre>
  <p>Is my understanding correct that:</p>
  <ul>
  <li>the timeout of the client.GetAsync call is 5s (because of <code>client.Timeout = TimeSpan.FromSeconds(5)</code>)?  and because <code>HttpCompletionOption.ResponseHeadersRead</code> is used, <code>client.GetAsync</code> is successfully completed once the headers are downloaded</li>
  <li>the stream processing is not affected by the <code>client.Timeout = TimeSpan.FromSeconds(5)</code> configuration</li>
  <li>stream processing does not have a timeout / time limit (on the client side at least).  so even for a very large file (say 1GB), it would theoretically be ok for the stream processing to take many minutes</li>
  </ul>
  <p>Thanks.</p>
  <p>Sorry, one other related question, say the stream processing consisted of a CopyTo call:</p>
  <pre><code>await stream.CopyToAsync(destStream);
  </code></pre>
  <p>Does the default <code>CopyToAsync</code> call above (no cancellation token) have any sort of time restriction?</p>