O'Reilly logo

Functional C# by Wisnu Anggoro

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

The asynchronous programming model pattern

The asynchronous programming model (APM) is an asynchronous operation that uses the IAsyncResult interface as its design pattern. It's also called the IAsyncResult pattern. For this purpose, the framework has provided the method named BeginXx and EndXx, in which Xx is the operation name, for instance, BeginRead and EndRead provided by the FileStream class to read bytes from a file asynchronously.

The difference in the synchronous Read() method with BeginRead() and EndRead() can be recognized from the method's declaration, as follows:

public int Read( byte[] array, int offset, int count ) public IAsyncResult BeginRead( byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required