title: Is Socket.BeginReceive(IList<ArraySegment<byte>> buffers.. Not Asynchronous?
body: <p>I have been looking to implement a custom class of :</p>
  
  <pre><code>IList&lt;ArraySegment&lt;byte&gt;&gt;
  </code></pre>
  
  <p>this will be passed to a socket, and used as the buffer to receive data from that Socket.</p>
  
  <pre><code>Socket.BeginReceive(
      IList&lt;ArraySegment&lt;Byte&gt;&gt;, SocketFlags, AsyncCallback, Object
      )
  </code></pre>
  
  <p><a href="http://msdn.microsoft.com/en-us/library/3sah14d0.aspx" rel="nofollow noreferrer">MSDN Documentation</a></p>
  
  <p>While testing I have found that when calling</p>
  
  <p>BeginReceive(IList..</p>
  
  <p>It blocks?!  When replacing this with the BeginReceive(byte[]... is acts asynchronously.</p>
  
  <p><strong>Has anyone else come accross this?</strong></p>
  
  <p>I will post my testing code up if required but would like to hear from anyone out there before I uglify this question :)</p>
  
  <p>Thanks!</p>