1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4 // ------------------------------------------------------------------------------
5 // Changes to this file must follow the http://aka.ms/api-review process.
6 // ------------------------------------------------------------------------------
7 
8 
9 namespace System.Threading
10 {
11     [System.CLSCompliantAttribute(false)]
IOCompletionCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* pOVERLAP)12     public unsafe delegate void IOCompletionCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* pOVERLAP);
13     public partial struct NativeOverlapped
14     {
15         public System.IntPtr EventHandle;
16         public System.IntPtr InternalHigh;
17         public System.IntPtr InternalLow;
18         public int OffsetHigh;
19         public int OffsetLow;
20     }
21     public sealed partial class PreAllocatedOverlapped : System.IDisposable
22     {
23         [System.CLSCompliantAttribute(false)]
PreAllocatedOverlapped(System.Threading.IOCompletionCallback callback, object state, object pinData)24         public PreAllocatedOverlapped(System.Threading.IOCompletionCallback callback, object state, object pinData) { }
Dispose()25         public void Dispose() { }
26     }
27     public sealed partial class ThreadPoolBoundHandle : System.IDisposable
28     {
ThreadPoolBoundHandle()29         internal ThreadPoolBoundHandle() { }
30         public System.Runtime.InteropServices.SafeHandle Handle { get { throw null; } }
31         [System.CLSCompliantAttribute(false)]
AllocateNativeOverlapped(System.Threading.IOCompletionCallback callback, object state, object pinData)32         public unsafe System.Threading.NativeOverlapped* AllocateNativeOverlapped(System.Threading.IOCompletionCallback callback, object state, object pinData) { throw null; }
33         [System.CLSCompliantAttribute(false)]
AllocateNativeOverlapped(System.Threading.PreAllocatedOverlapped preAllocated)34         public unsafe System.Threading.NativeOverlapped* AllocateNativeOverlapped(System.Threading.PreAllocatedOverlapped preAllocated) { throw null; }
BindHandle(System.Runtime.InteropServices.SafeHandle handle)35         public static System.Threading.ThreadPoolBoundHandle BindHandle(System.Runtime.InteropServices.SafeHandle handle) { throw null; }
Dispose()36         public void Dispose() { }
37         [System.CLSCompliantAttribute(false)]
FreeNativeOverlapped(System.Threading.NativeOverlapped* overlapped)38         public unsafe void FreeNativeOverlapped(System.Threading.NativeOverlapped* overlapped) { }
39         [System.CLSCompliantAttribute(false)]
GetNativeOverlappedState(System.Threading.NativeOverlapped* overlapped)40         public static unsafe object GetNativeOverlappedState(System.Threading.NativeOverlapped* overlapped) { throw null; }
41     }
42     public partial class Overlapped
43     {
Overlapped()44         public Overlapped() { }
45         [System.ObsoleteAttribute("This constructor is not 64-bit compatible.  Use the constructor that takes an IntPtr for the event handle.  http://go.microsoft.com/fwlink/?linkid=14202")]
Overlapped(int offsetLo, int offsetHi, int hEvent, System.IAsyncResult ar)46         public Overlapped(int offsetLo, int offsetHi, int hEvent, System.IAsyncResult ar) { }
Overlapped(int offsetLo, int offsetHi, System.IntPtr hEvent, System.IAsyncResult ar)47         public Overlapped(int offsetLo, int offsetHi, System.IntPtr hEvent, System.IAsyncResult ar) { }
48         public System.IAsyncResult AsyncResult { get { throw null; } set { } }
49         [System.ObsoleteAttribute("This property is not 64-bit compatible.  Use EventHandleIntPtr instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
50         public int EventHandle { get { throw null; } set { } }
51         public System.IntPtr EventHandleIntPtr { get { throw null; } set { } }
52         public int OffsetHigh { get { throw null; } set { } }
53         public int OffsetLow { get { throw null; } set { } }
54         [System.CLSCompliantAttribute(false)]
Free(System.Threading.NativeOverlapped* nativeOverlappedPtr)55         public static unsafe void Free(System.Threading.NativeOverlapped* nativeOverlappedPtr) { }
56         [System.CLSCompliantAttribute(false)]
57         [System.ObsoleteAttribute("This method is not safe.  Use Pack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
Pack(System.Threading.IOCompletionCallback iocb)58         public unsafe System.Threading.NativeOverlapped* Pack(System.Threading.IOCompletionCallback iocb) { throw null; }
59         [System.CLSCompliantAttribute(false)]
Pack(System.Threading.IOCompletionCallback iocb, object userData)60         public unsafe System.Threading.NativeOverlapped* Pack(System.Threading.IOCompletionCallback iocb, object userData) { throw null; }
61         [System.CLSCompliantAttribute(false)]
Unpack(System.Threading.NativeOverlapped* nativeOverlappedPtr)62         public static unsafe System.Threading.Overlapped Unpack(System.Threading.NativeOverlapped* nativeOverlappedPtr) { throw null; }
63         [System.CLSCompliantAttribute(false)]
64         [System.ObsoleteAttribute("This method is not safe.  Use UnsafePack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
UnsafePack(System.Threading.IOCompletionCallback iocb)65         public unsafe System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb) { throw null; }
66         [System.CLSCompliantAttribute(false)]
UnsafePack(System.Threading.IOCompletionCallback iocb, object userData)67         public unsafe System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData) { throw null; }
68     }
69 }
70