BufferedStream.Flush Metod

Definition

Rensar alla buffertar för den här strömmen och gör att buffrade data skrivs till den underliggande enheten.

public:
 override void Flush();
public override void Flush();
override this.Flush : unit -> unit
Public Overrides Sub Flush ()

Undantag

Strömmen har tagits bort.

Datakällan eller lagringsplatsen är inte öppen.

Exempel

Det här kodexemplet är en del av ett större exempel för BufferedStream klassen.

// Send the data using the BufferedStream.
Console.WriteLine("Sending data using BufferedStream.");
startTime = DateTime.Now;
for(int i = 0; i < numberOfLoops; i++)
{
    bufStream.Write(dataToSend, 0, dataToSend.Length);
}
bufStream.Flush();
bufferedTime = (DateTime.Now - startTime).TotalSeconds;
Console.WriteLine("{0} bytes sent in {1} seconds.\n",
    numberOfLoops * dataToSend.Length,
    bufferedTime.ToString("F1"));
// Send the data using the BufferedStream.
printfn "Sending data using BufferedStream."
let startTime = DateTime.Now
for _ = 0 to numberOfLoops - 1 do
    bufStream.Write(dataToSend, 0, dataToSend.Length)
bufStream.Flush()
let bufferedTime = (DateTime.Now - startTime).TotalSeconds
printfn $"{numberOfLoops * dataToSend.Length} bytes sent in {bufferedTime:F1} seconds.\n"
' Send the data using the BufferedStream.
Console.WriteLine("Sending data using BufferedStream.")
startTime = DateTime.Now
For i As Integer = 1 To numberOfLoops
    bufStream.Write(dataToSend, 0, dataToSend.Length)
Next i

bufStream.Flush()
bufferedTime = DateTime.Now.Subtract(startTime).TotalSeconds
Console.WriteLine("{0} bytes sent In {1} seconds." & vbCrLf, _
    numberOfLoops * dataToSend.Length, _
    bufferedTime.ToString("F1"))

Kommentarer

Om dataströmmen töms töms inte dess underliggande kodare om du inte uttryckligen anropar Flush eller Close.

Om du använder BufferedStream konstruktorn och därmed anger buffertstorleken BufferedStream när du skapar objektet rensas innehållet när det når buffertstorleken. Kod som BufferedStream bs = new BufferedStream(bs, 5) rensar till exempel innehållet när buffertstorleken når 5 byte.

Alla läs- och skrivmetoder BufferedStream för att automatiskt underhålla bufferten, så du behöver inte anropa Flush när du växlar fram och tillbaka mellan läsning och skrivning.

Gäller för

Se även