我試圖創建一個程序,它在新數據寫入FileStream對象後立即調用一個動作。我目前的做法如下:數據寫入流時的事件?
public class BlockingFileStream : FileStream
{
public override int Read(byte[] array, int offset, int count)
{
while (Position == Length) ;
return base.Read(array, offset, count);
}
public override int ReadByte()
{
while (Position == Length) ;
return base.ReadByte();
}
}
正如你所看到的,所有這個類的作用是等待,直到流的長度比其當前位置大。它似乎工作,但是,我一直在想,是否有更好的方式來做到這一點。所以我的問題是:
有沒有更好的方法來做在上面張貼的代碼中完成的操作?
您的程序是寫入流,還是另一個程序寫入文件,而您旋轉等待檢查文件大小? – 2012-02-05 20:25:00
另一個程序正在同時訪問該文件,同時我想繼續檢查是否寫入了新數據。 – haiyyu 2012-02-05 20:32:26