March 2002
Intermediate to advanced
864 pages
31h 8m
English
Overlapped
This class encapsulates the Win32 API OVERLAPPED
structure. NativeOverlapped is needed to
mimic the structure the API expects, but this class encapsulates the overlapped
structure into a .NET class. You can create NativeOverlapped
structures by
calling Pack(), and
create Overlapped objects with
the static Unpack()
method. To avoid a memory leak, each NativeOverlapped
that you create must also be freed by calling the
static Free()
method. Unpack() does
not free the memory.
public class Overlapped { // Public Constructors public method Overlapped(); public method Overlapped(int offsetLo, int offsetHi, int hEvent, IAsyncResult ar); // Public Instance Properties public field IAsyncResult AsyncResult{set; get; } public field int EventHandle{set; get; } public field int OffsetHigh{set; get; } public field int OffsetLow{set; get; } // Public Static Methods public static method void Free( NativeOverlapped *nativeOverlappedPtr); public static method Overlapped Unpack( NativeOverlapped *nativeOverlappedPtr); // Public Instance Methods public method NativeOverlapped* Pack( IOCompletionCallback iocb); public method NativeOverlapped* UnsafePack( IOCompletionCallback iocb); }