illustrates asynchronous I/O : Asynchronous Input output « File Stream « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Design Patterns
8.Development Class
9.Event
10.File Stream
11.Generics
12.GUI Windows Form
13.Language Basics
14.LINQ
15.Network
16.Office
17.Reflection
18.Regular Expressions
19.Security
20.Services Event
21.Thread
22.Web Services
23.Windows
24.Windows Presentation Foundation
25.XML
26.XML LINQ
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » File Stream » Asynchronous Input outputScreenshots 
illustrates asynchronous I/O
illustrates asynchronous I/O

/*
Mastering Visual C# .NET
by Jason Price, Mike Gunderloy

Publisher: Sybex;
ISBN: 0782129110
*/

 /*
  Example15_18.cs illustrates asynchronous I/O
*/

using System;
using System.IO;
using System.Windows.Forms;

public class Example15_18 
{
  // stream to handle reading
  private static FileStream inStream;

  // delegated method to handle callback
  private static AsyncCallback acb;

  // allocate a big buffer for reading
  static byte[] buf = new byte[500000];

  // callback to use when read is complete
  static void OnComplete(IAsyncResult asyncResult)
  {
    int bytesRead = inStream.EndRead(asyncResult);
    Console.Write(bytesRead);
    Console.WriteLine(" bytes read!");
  }
    
    [STAThread]
  public static void Main() 
  {
    // use an open file dialog to get a filename
    OpenFileDialog dlgOpen = new OpenFileDialog();
    dlgOpen.Title="Select file to read";

    if (dlgOpen.ShowDialog() == DialogResult.OK)
    {
      // open the file
      inStream = new FileStream(dlgOpen.FileName, FileMode.Open, 
       FileAccess.Read, FileShare.None, 2048true);

      // assign the callback delegate
      acb = new AsyncCallback(OnComplete);

      // read asynchronously
      inStream.BeginRead(buf, 0500000, acb, null);

      // do some work in the meantime
      for(int i=0; i<10; i++)
        Console.WriteLine(i);
      // And wait for the user to quit
      Console.WriteLine("Press Enter to exit");
      int resp = Console.Read();
    }

  }

}



           
       
Related examples in the same category
1.Synchronous Writing, Asynchronous Reading
2.Asynchronous Writing, Asynchronous Reading
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.