<PackageReference Include="NETStandard.Library" Version="2.0.2" />

System.Threading.ThreadPool

public static class ThreadPool
namespace System.Threading { public static class ThreadPool { public static bool BindHandle(IntPtr osHandle); public static bool BindHandle(SafeHandle osHandle); public static void GetAvailableThreads(out int workerThreads, out int completionPortThreads); public static void GetMaxThreads(out int workerThreads, out int completionPortThreads); public static void GetMinThreads(out int workerThreads, out int completionPortThreads); public static bool QueueUserWorkItem(WaitCallback callBack); public static bool QueueUserWorkItem(WaitCallback callBack, object state); public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); public static RegisteredWaitHandle RegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); public static bool SetMaxThreads(int workerThreads, int completionPortThreads); public static bool SetMinThreads(int workerThreads, int completionPortThreads); public unsafe static bool UnsafeQueueNativeOverlapped(NativeOverlapped* overlapped); public static bool UnsafeQueueUserWorkItem(WaitCallback callBack, object state); public static RegisteredWaitHandle UnsafeRegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, int millisecondsTimeOutInterval, bool executeOnlyOnce); public static RegisteredWaitHandle UnsafeRegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, long millisecondsTimeOutInterval, bool executeOnlyOnce); public static RegisteredWaitHandle UnsafeRegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, TimeSpan timeout, bool executeOnlyOnce); public static RegisteredWaitHandle UnsafeRegisterWaitForSingleObject(WaitHandle waitObject, WaitOrTimerCallback callBack, object state, uint millisecondsTimeOutInterval, bool executeOnlyOnce); } }