Overlapped.UnsafePack Metod

Definition

Packar den aktuella instansen i en NativeOverlapped struktur. Sprider inte anropsstacken.

Överlagringar

Name Description
UnsafePack(IOCompletionCallback)
Föråldrad.
Föråldrad.
Föråldrad.

Packar den aktuella instansen i en NativeOverlapped struktur som anger vilket ombud som ska anropas när den asynkrona I/O-åtgärden är klar. Sprider inte anropsstacken.

UnsafePack(IOCompletionCallback, Object)

Packar den aktuella instansen i en NativeOverlapped struktur och anger vilket ombud som ska anropas när den asynkrona I/O-åtgärden är klar och det hanterade objektet som fungerar som en buffert. Sprider inte anropsstacken.

UnsafePack(IOCompletionCallback)

Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs

Varning

This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.

Varning

This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202

Varning

This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202

Viktigt!

Detta API uppfyller inte CLS.

Packar den aktuella instansen i en NativeOverlapped struktur som anger vilket ombud som ska anropas när den asynkrona I/O-åtgärden är klar. Sprider inte anropsstacken.

public:
 System::Threading::NativeOverlapped* UnsafePack(System::Threading::IOCompletionCallback ^ iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[<System.CLSCompliant(false)>]
[<System.Obsolete("This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use UnsafePack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
[<System.Security.SecurityCritical>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>

Parametrar

iocb
IOCompletionCallback

Ett IOCompletionCallback ombud som representerar motringningsmetoden som anropas när den asynkrona I/O-åtgärden slutförs.

Returer

En ohanterad pekare till en NativeOverlapped struktur.

Attribut

Undantag

Overlapped Strömmen har redan packats.

Kommentarer

Den ohanterade pekaren som returneras av den här metoden kan skickas till operativsystemet i överlappande I/O-åtgärder. Strukturen NativeOverlapped är fast i fysiskt minne tills den anropas Unpack .

Anroparen ansvarar för att fästa bufferten. Om programdomänen tas bort förstörs dock handtaget till den fästa bufferten och bufferten frigörs, vilket lämnar I/O-åtgärden att skriva till den frigjorda adressen. Därför är det bättre att använda UnsafePack(IOCompletionCallback, Object) metodens överlagring, där körningen fäster bufferten.

Caution

UnsafePack Om du använder metoden kan du oavsiktligt öppna ett säkerhetshål. Kodåtkomstsäkerhet baserar sina behörighetskontroller på behörigheterna för alla anropare i stacken. Metoden UnsafePack sprider inte den anropande stacken. Skadlig kod kanske kan utnyttja detta för att undvika behörighetskontroller.

Gäller för

UnsafePack(IOCompletionCallback, Object)

Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs
Källa:
Overlapped.cs

Viktigt!

Detta API uppfyller inte CLS.

Packar den aktuella instansen i en NativeOverlapped struktur och anger vilket ombud som ska anropas när den asynkrona I/O-åtgärden är klar och det hanterade objektet som fungerar som en buffert. Sprider inte anropsstacken.

public:
 System::Threading::NativeOverlapped* UnsafePack(System::Threading::IOCompletionCallback ^ iocb, System::Object ^ userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb, object? userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[<System.CLSCompliant(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Security.SecurityCritical>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>

Parametrar

iocb
IOCompletionCallback

Ett IOCompletionCallback ombud som representerar motringningsmetoden som anropas när den asynkrona I/O-åtgärden slutförs.

userData
Object

Ett objekt eller en matris med objekt som representerar indata- eller utdatabufferten för åtgärden. Varje objekt representerar en buffert, till exempel en matris med byte.

Returer

En ohanterad pekare till en NativeOverlapped struktur.

Attribut

Undantag

Anroparen har inte den behörighet som krävs.

Overlapped Strömmen är redan packad.

Kommentarer

Den ohanterade pekaren som returneras av den här metoden kan skickas till operativsystemet i överlappande I/O-åtgärder. Strukturen NativeOverlapped är fast i fysiskt minne tills den anropas Unpack .

Bufferten eller buffertarna som anges i userData måste vara samma som de som skickas till den ohanterade operativsystemfunktion som utför den asynkrona I/O.

Körningen fäster bufferten eller buffertarna som anges iuserData under I/O-åtgärdens varaktighet. Om programdomänen tas bort behåller körningen minnet fäst tills I/O-åtgärden har slutförts.

Caution

UnsafePack Om du använder metoden kan du oavsiktligt öppna ett säkerhetshål. Kodåtkomstsäkerhet baserar sina behörighetskontroller på behörigheterna för alla anropare i stacken. Metoden UnsafePack sprider inte den anropande stacken. Skadlig kod kanske kan utnyttja detta för att undvika behörighetskontroller.

Gäller för