Overlapped.UnsafePack Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli örneği bir NativeOverlapped yapıda paketler. Çağrı yığınını yaymıyor.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| UnsafePack(IOCompletionCallback) |
Geçersiz.
Geçersiz.
Geçersiz.
Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılacak temsilciyi belirten bir NativeOverlapped yapıda geçerli örneği paketler. Çağrı yığınını yaymıyor. |
| UnsafePack(IOCompletionCallback, Object) |
Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılacak temsilciyi ve arabellek görevi görecek yönetilen nesneyi belirterek geçerli örneği bir NativeOverlapped yapıda paketler. Çağrı yığınını yaymıyor. |
UnsafePack(IOCompletionCallback)
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
Dikkat
This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.
Dikkat
This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202
Dikkat
This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202
Önemli
Bu API, CLS uyumlu değildir.
Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılacak temsilciyi belirten bir NativeOverlapped yapıda geçerli örneği paketler. Çağrı yığınını yaymıyor.
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>
Parametreler
- iocb
- IOCompletionCallback
IOCompletionCallback Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılan geri çağırma yöntemini temsil eden bir temsilci.
Döndürülenler
Bir yapıya yönelik yönetilmeyen işaretçi NativeOverlapped .
- Öznitelikler
Özel durumlar
Geçerli Overlapped zaten paketlenmiş.
Açıklamalar
Bu yöntem tarafından döndürülen yönetilmeyen işaretçi, çakışan G/Ç işlemlerinde işletim sistemine geçirilebilir. Yapı NativeOverlapped , çağrılana kadar Unpack fiziksel bellekte sabittir.
Arabelleği sabitlemek çağıran sorumludur. Ancak uygulama etki alanı kaldırılırsa, sabitlenmiş arabelleğin tanıtıcısı yok edilir ve arabellek serbest bırakılmış adrese yazılacak G/Ç işlemi bırakılır. Bu nedenle, çalışma zamanının UnsafePack(IOCompletionCallback, Object) arabelleği sabitlediği yöntem aşırı yüklemesini kullanmak daha iyidir.
Caution
yöntemini kullanmak UnsafePack istemeden bir güvenlik deliği açabilir. Kod erişimi güvenliği, izin denetimlerini yığındaki tüm çağıranların izinlerine göre temel alır. UnsafePack yöntemi çağrı yığınını yaymıyor. Kötü amaçlı kod, izin denetimlerini önlemek için bu durumdan yararlanabilir.
Şunlara uygulanır
UnsafePack(IOCompletionCallback, Object)
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
- Kaynak:
- Overlapped.cs
Önemli
Bu API, CLS uyumlu değildir.
Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılacak temsilciyi ve arabellek görevi görecek yönetilen nesneyi belirterek geçerli örneği bir NativeOverlapped yapıda paketler. Çağrı yığınını yaymıyor.
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>
Parametreler
- iocb
- IOCompletionCallback
IOCompletionCallback Zaman uyumsuz G/Ç işlemi tamamlandığında çağrılan geri çağırma yöntemini temsil eden bir temsilci.
- userData
- Object
İşlem için giriş veya çıkış arabelleği temsil eden bir nesne veya nesne dizisi. Her nesne bir arabelleği, örneğin bayt dizisini temsil eder.
Döndürülenler
Bir yapıya yönelik yönetilmeyen işaretçi NativeOverlapped .
- Öznitelikler
Özel durumlar
Çağıranın gerekli izni yok.
Geçerli Overlapped zaten paketlenmiş.
Açıklamalar
Bu yöntem tarafından döndürülen yönetilmeyen işaretçi, çakışan G/Ç işlemlerinde işletim sistemine geçirilebilir. Yapı NativeOverlapped , çağrılana kadar Unpack fiziksel bellekte sabittir.
içinde userData belirtilen arabellek veya arabellekler, zaman uyumsuz G/Ç'yi gerçekleştiren yönetilmeyen işletim sistemi işlevine geçirilenlerle aynı olmalıdır.
Çalışma zamanı, G/Ç işlemi süresi boyunca içindeuserData belirtilen arabelleği veya arabellekleri sabitler. Uygulama etki alanı kaldırılırsa, G/Ç işlemi tamamlanana kadar çalışma zamanı belleği sabitlenmiş olarak tutar.
Caution
yöntemini kullanmak UnsafePack istemeden bir güvenlik deliği açabilir. Kod erişimi güvenliği, izin denetimlerini yığındaki tüm çağıranların izinlerine göre temel alır. UnsafePack yöntemi çağrı yığınını yaymıyor. Kötü amaçlı kod, izin denetimlerini önlemek için bu durumdan yararlanabilir.