ThreadPoolBoundHandle.UnsafeAllocateNativeOverlapped Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Important
Cette API n’est pas conforme CLS.
Retourne un pointeur non managé vers une NativeOverlapped structure, en spécifiant un délégué appelé lorsque l’opération d’E/S asynchrone est terminée, un objet fourni par l’utilisateur fournissant un contexte et des objets managés qui servent de mémoires tampons.
public:
System::Threading::NativeOverlapped* UnsafeAllocateNativeOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafeAllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
member this.UnsafeAllocateNativeOverlapped : System.Threading.IOCompletionCallback * obj * obj -> nativeptr<System.Threading.NativeOverlapped>
Paramètres
- callback
- IOCompletionCallback
Délégué IOCompletionCallback qui représente la méthode de rappel appelée lorsque l'opération asynchrone d'E/S est terminée.
- state
- Object
Objet fourni par l’utilisateur qui le NativeOverlapped distingue 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 l'opération. Chaque objet représente une mémoire tampon, par exemple un tableau d'octets. Peut être null
.
Retours
Pointeur non managé vers une structure NativeOverlapped.
- Attributs
Exceptions
callback
a la valeur null
.
Cette méthode a été appelée après la suppression de ThreadPoolBoundHandle.
Remarques
Le pointeur non managé retourné par cette méthode peut être passé au système d’exploitation en opérations d’E/S qui se chevauchent. La NativeOverlapped structure est fixe en mémoire physique jusqu’à ce qu’elle FreeNativeOverlapped(NativeOverlapped*) soit appelée.
La mémoire tampon ou les mémoires tampons spécifiées doivent pinData
être identiques à celles passées à la fonction de système d’exploitation non managée qui effectue les E/S asynchrones.
ExecutionContext n’est pas acheminé vers l’appel du rappel.
Notes
Les mémoires tampons spécifiées pinData
sont épinglées pendant la durée de l’opération d’E/S.