| 
  
  
   Read the number of bytes requested, compensating for partial 
  reads. 
  Normally, we have a blocking socket, but a read() can be interrupted 
  by a signal (resulting in a partial read). 
  Note that we cannot distinguish between EOF and an interrupt when zero
  bytes have been read. IncompleteRead() will be raised in this 
  situation. 
  This function should be used when <amt> bytes "should"
  be present for reading. If the bytes are truly not available (due to 
  EOF), then the IncompleteRead exception can be used to detect the 
  problem. 
  
   
 |