PreAllocatedOverlapped.UnsafeCreate Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Belangrijk
Deze API is niet CLS-conform.
Initialiseert een nieuw exemplaar van de PreAllocatedOverlapped klasse, waarbij een gemachtigde wordt opgegeven die wordt aangeroepen wanneer elke asynchrone I/O-bewerking is voltooid, een door de gebruiker verstrekt object dat context biedt en beheerde objecten die fungeren als buffers.
public:
static System::Threading::PreAllocatedOverlapped ^ UnsafeCreate(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public static System.Threading.PreAllocatedOverlapped UnsafeCreate(System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
static member UnsafeCreate : System.Threading.IOCompletionCallback * obj * obj -> System.Threading.PreAllocatedOverlapped
Public Shared Function UnsafeCreate (callback As IOCompletionCallback, state As Object, pinData As Object) As PreAllocatedOverlapped
Parameters
- callback
- IOCompletionCallback
Een IOCompletionCallback gemachtigde die de callback-methode vertegenwoordigt die wordt aangeroepen wanneer elke asynchrone I/O-bewerking is voltooid.
- state
- Object
Een door de gebruiker verstrekt object dat onderscheid maakt tussen NativeOverlapped exemplaren die afkomstig zijn van dit object van andere NativeOverlapped exemplaren. Kan zijn null.
- pinData
- Object
Een object of matrix met objecten die de invoer- of uitvoerbuffer voor de bewerkingen vertegenwoordigen. Elk object vertegenwoordigt een buffer, bijvoorbeeld een matrix van bytes. Kan zijn null.
Retouren
Het nieuwe PreAllocatedOverlapped exemplaar.
- Kenmerken
Uitzonderingen
callback is null.
Deze methode is aangeroepen nadat de verwijdering ThreadPoolBoundHandle is uitgevoerd.
Opmerkingen
Het nieuwe PreAllocatedOverlapped exemplaar kan worden doorgegeven aan AllocateNativeOverlapped(PreAllocatedOverlapped), om een NativeOverlapped exemplaar te produceren dat kan worden doorgegeven aan het besturingssysteem in overlappende I/O-bewerkingen. Eén PreAllocatedOverlapped exemplaar kan slechts worden gebruikt voor één systeemeigen I/O-bewerking tegelijk. De status die in het PreAllocatedOverlapped exemplaar is opgeslagen, kan echter opnieuw worden gebruikt voor volgende systeemeigen bewerkingen. ExecutionContext wordt niet naar de aanroep van de callback gestroomd.
Note
De opgegeven pinData buffers worden vastgemaakt totdat Dispose() ze worden aangeroepen.