PreAllocatedOverlapped.UnsafeCreate Méthode

Définition

Important

Cette API n’est pas conforme CLS.

Initialise une nouvelle instance de la classe, en spécifiant un délégué appelé lorsque chaque opération d’E/S asynchrone est terminée, un objet fourni par l’utilisateur PreAllocatedOverlapped fournissant un contexte et des objets managés qui servent de mémoires tampons.

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

Paramètres

callback
IOCompletionCallback

Délégué IOCompletionCallback qui représente la méthode de rappel appelée lorsque chaque opération d’E/S asynchrone se termine.

state
Object

Objet fourni par l’utilisateur qui distingue l’instance NativeOverlapped produite de cet objet par d’autres NativeOverlapped instances. Peut être null.

pinData
Object

Objet ou tableau d’objets représentant la mémoire tampon d’entrée ou de sortie pour les opérations. Chaque objet représente une mémoire tampon, par exemple un tableau d’octets. Peut être null.

Retours

Nouvelle PreAllocatedOverlapped instance.

Attributs

Exceptions

callback a la valeur null.

Cette méthode a été appelée après la ThreadPoolBoundHandle suppression.

Remarques

La nouvelle PreAllocatedOverlapped instance peut être passée à AllocateNativeOverlapped(PreAllocatedOverlapped), pour produire une NativeOverlapped instance qui peut être transmise au système d’exploitation en opérations d’E/S superposées. Une seule PreAllocatedOverlapped instance ne peut être utilisée que pour une seule opération d’E/S native à la fois. Toutefois, l’état stocké dans l’instance PreAllocatedOverlapped peut être réutilisé pour les opérations natives suivantes. ExecutionContext n’est pas acheminé vers l’appel du rappel.

Note

Les mémoires tampons spécifiées dans pinData sont épinglées jusqu’à ce qu’elles Dispose() soient appelées.

S’applique à