public override int Read()
{
if (oneBuffer == null)
oneBuffer = new byte[1];
if (Read (oneBuffer, 0, 1) == -1)
return -1;
return oneBuffer[0];
}
PipedInputStream::Read ( byte b, int offset, int len ) : int |
public void TestBigWrite () { PipedInputStream pin = new PipedInputStream (); PipedOutputStream pout = new PipedOutputStream (pin); Random r = new Random (0); byte[] data = new byte [PipedInputStream.PIPE_SIZE * 3]; r.NextBytes (data); ThreadPool.QueueUserWorkItem (delegate { pout.Write (data); pout.Close (); }); int n = 0; byte[] buffer = new byte [100]; int nr; while ((nr = pin.Read (buffer)) != -1) { for (int i=0; i < nr; i++) Assert.AreEqual (buffer[i], data[n++], "Position " + n); } }