ReactOS 0.4.16-dev-1273-g5b94656
threadpoolapiset.h File Reference
#include <windef.h>
Include dependency graph for threadpoolapiset.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define _THREADPOOLAPISET_H_
 

Typedefs

typedef struct _CRITICAL_SECTIONPCRITICAL_SECTION
 
typedef VOID(WINAPIPTP_WIN32_IO_CALLBACK) (_Inout_ PTP_CALLBACK_INSTANCE Instance, _Inout_opt_ PVOID Context, _Inout_opt_ PVOID Overlapped, _In_ ULONG IoResult, _In_ ULONG_PTR NumberOfBytesTransferred, _Inout_ PTP_IO Io)
 

Functions

WINBASEAPI _Must_inspect_result_ PTP_POOL WINAPI CreateThreadpool (_Reserved_ PVOID reserved)
 
WINBASEAPI VOID WINAPI CloseThreadpool (_Inout_ PTP_POOL ptpp)
 
WINBASEAPI BOOL WINAPI SetThreadpoolThreadMinimum (_Inout_ PTP_POOL ptpp, _In_ DWORD cthrdMic)
 
WINBASEAPI VOID WINAPI SetThreadpoolThreadMaximum (_Inout_ PTP_POOL ptpp, _In_ DWORD cthrdMost)
 
WINBASEAPI BOOL WINAPI QueryThreadpoolStackInformation (_In_ PTP_POOL ptpp, _Out_ PTP_POOL_STACK_INFORMATION ptpsi)
 
WINBASEAPI BOOL WINAPI SetThreadpoolStackInformation (_Inout_ PTP_POOL ptpp, _In_ PTP_POOL_STACK_INFORMATION ptpsi)
 
WINBASEAPI _Must_inspect_result_ BOOL WINAPI TrySubmitThreadpoolCallback (_In_ PTP_SIMPLE_CALLBACK pfns, _Inout_opt_ PVOID pv, _In_opt_ PTP_CALLBACK_ENVIRON pcbe)
 
WINBASEAPI BOOL WINAPI CallbackMayRunLong (_Inout_ PTP_CALLBACK_INSTANCE pci)
 
WINBASEAPI VOID WINAPI DisassociateCurrentThreadFromCallback (_Inout_ PTP_CALLBACK_INSTANCE pci)
 
WINBASEAPI VOID WINAPI FreeLibraryWhenCallbackReturns (_Inout_ PTP_CALLBACK_INSTANCE pci, _In_ HMODULE mod)
 
WINBASEAPI VOID WINAPI LeaveCriticalSectionWhenCallbackReturns (_Inout_ PTP_CALLBACK_INSTANCE pci, _Inout_ PCRITICAL_SECTION pcs)
 
WINBASEAPI VOID WINAPI ReleaseMutexWhenCallbackReturns (_Inout_ PTP_CALLBACK_INSTANCE pci, _In_ HANDLE mut)
 
WINBASEAPI VOID WINAPI ReleaseSemaphoreWhenCallbackReturns (_Inout_ PTP_CALLBACK_INSTANCE pci, _In_ HANDLE sem, _In_ DWORD crel)
 
WINBASEAPI VOID WINAPI SetEventWhenCallbackReturns (_Inout_ PTP_CALLBACK_INSTANCE pci, _In_ HANDLE evt)
 
WINBASEAPI _Must_inspect_result_ PTP_CLEANUP_GROUP WINAPI CreateThreadpoolCleanupGroup (VOID)
 
WINBASEAPI VOID WINAPI CloseThreadpoolCleanupGroup (_Inout_ PTP_CLEANUP_GROUP ptpcg)
 
WINBASEAPI VOID WINAPI CloseThreadpoolCleanupGroupMembers (_Inout_ PTP_CLEANUP_GROUP ptpcg, _In_ BOOL fCancelPendingCallbacks, _Inout_opt_ PVOID pvCleanupContext)
 
WINBASEAPI _Must_inspect_result_ PTP_IO WINAPI CreateThreadpoolIo (_In_ HANDLE fl, _In_ PTP_WIN32_IO_CALLBACK pfnio, _Inout_opt_ PVOID pv, _In_opt_ PTP_CALLBACK_ENVIRON pcbe)
 
WINBASEAPI VOID WINAPI CloseThreadpoolIo (_Inout_ PTP_IO pio)
 
WINBASEAPI VOID WINAPI StartThreadpoolIo (_Inout_ PTP_IO pio)
 
WINBASEAPI VOID WINAPI CancelThreadpoolIo (_Inout_ PTP_IO pio)
 
WINBASEAPI VOID WINAPI WaitForThreadpoolIoCallbacks (_Inout_ PTP_IO pio, _In_ BOOL fCancelPendingCallbacks)
 
WINBASEAPI _Must_inspect_result_ PTP_TIMER WINAPI CreateThreadpoolTimer (_In_ PTP_TIMER_CALLBACK pfnti, _Inout_opt_ PVOID pv, _In_opt_ PTP_CALLBACK_ENVIRON pcbe)
 
WINBASEAPI VOID WINAPI CloseThreadpoolTimer (_Inout_ PTP_TIMER pti)
 
WINBASEAPI VOID WINAPI SetThreadpoolTimer (_Inout_ PTP_TIMER pti, _In_opt_ PFILETIME pftDueTime, _In_ DWORD msPeriod, _In_opt_ DWORD msWindowLength)
 
WINBASEAPI BOOL WINAPI SetThreadpoolTimerEx (_Inout_ PTP_TIMER pti, _In_opt_ PFILETIME pftDueTime, _In_ DWORD msPeriod, _In_opt_ DWORD msWindowLength)
 
WINBASEAPI BOOL WINAPI IsThreadpoolTimerSet (_Inout_ PTP_TIMER pti)
 
WINBASEAPI VOID WINAPI WaitForThreadpoolTimerCallbacks (_Inout_ PTP_TIMER pti, _In_ BOOL fCancelPendingCallbacks)
 
WINBASEAPI _Must_inspect_result_ PTP_WAIT WINAPI CreateThreadpoolWait (_In_ PTP_WAIT_CALLBACK pfnwa, _Inout_opt_ PVOID pv, _In_opt_ PTP_CALLBACK_ENVIRON pcbe)
 
WINBASEAPI VOID WINAPI CloseThreadpoolWait (_Inout_ PTP_WAIT pwa)
 
WINBASEAPI VOID WINAPI SetThreadpoolWait (_Inout_ PTP_WAIT pwa, _In_opt_ HANDLE h, _In_opt_ PFILETIME pftTimeout)
 
WINBASEAPI BOOL WINAPI SetThreadpoolWaitEx (_Inout_ PTP_WAIT pwa, _In_opt_ HANDLE h, _In_opt_ PFILETIME pftTimeout, _Reserved_ PVOID Reserved)
 
WINBASEAPI VOID WINAPI WaitForThreadpoolWaitCallbacks (_Inout_ PTP_WAIT pwa, _In_ BOOL fCancelPendingCallbacks)
 
WINBASEAPI _Must_inspect_result_ PTP_WORK WINAPI CreateThreadpoolWork (_In_ PTP_WORK_CALLBACK pfnwk, _Inout_opt_ PVOID pv, _In_opt_ PTP_CALLBACK_ENVIRON pcbe)
 
WINBASEAPI VOID WINAPI CloseThreadpoolWork (_Inout_ PTP_WORK pwk)
 
WINBASEAPI VOID WINAPI SubmitThreadpoolWork (_Inout_ PTP_WORK pwk)
 
WINBASEAPI VOID WINAPI WaitForThreadpoolWorkCallbacks (_Inout_ PTP_WORK pwk, _In_ BOOL fCancelPendingCallbacks)
 

Macro Definition Documentation

◆ _THREADPOOLAPISET_H_

#define _THREADPOOLAPISET_H_

Definition at line 5 of file threadpoolapiset.h.

Typedef Documentation

◆ PCRITICAL_SECTION

Definition at line 10 of file threadpoolapiset.h.

◆ PTP_WIN32_IO_CALLBACK

typedef VOID(WINAPI * PTP_WIN32_IO_CALLBACK) (_Inout_ PTP_CALLBACK_INSTANCE Instance, _Inout_opt_ PVOID Context, _Inout_opt_ PVOID Overlapped, _In_ ULONG IoResult, _In_ ULONG_PTR NumberOfBytesTransferred, _Inout_ PTP_IO Io)

Definition at line 136 of file threadpoolapiset.h.

Function Documentation

◆ CallbackMayRunLong()

WINBASEAPI BOOL WINAPI CallbackMayRunLong ( _Inout_ PTP_CALLBACK_INSTANCE  pci)

◆ CancelThreadpoolIo()

WINBASEAPI VOID WINAPI CancelThreadpoolIo ( _Inout_ PTP_IO  pio)

Referenced by init_threadpool().

◆ CloseThreadpool()

◆ CloseThreadpoolCleanupGroup()

WINBASEAPI VOID WINAPI CloseThreadpoolCleanupGroup ( _Inout_ PTP_CLEANUP_GROUP  ptpcg)

◆ CloseThreadpoolCleanupGroupMembers()

WINBASEAPI VOID WINAPI CloseThreadpoolCleanupGroupMembers ( _Inout_ PTP_CLEANUP_GROUP  ptpcg,
_In_ BOOL  fCancelPendingCallbacks,
_Inout_opt_ PVOID  pvCleanupContext 
)

◆ CloseThreadpoolIo()

WINBASEAPI VOID WINAPI CloseThreadpoolIo ( _Inout_ PTP_IO  pio)

Referenced by init_threadpool().

◆ CloseThreadpoolTimer()

WINBASEAPI VOID WINAPI CloseThreadpoolTimer ( _Inout_ PTP_TIMER  pti)

Referenced by _MdTimer::~_MdTimer().

◆ CloseThreadpoolWait()

WINBASEAPI VOID WINAPI CloseThreadpoolWait ( _Inout_ PTP_WAIT  pwa)

◆ CloseThreadpoolWork()

WINBASEAPI VOID WINAPI CloseThreadpoolWork ( _Inout_ PTP_WORK  pwk)

Referenced by init_funcs(), and _MdTimer::~_MdTimer().

◆ CreateThreadpool()

◆ CreateThreadpoolCleanupGroup()

WINBASEAPI _Must_inspect_result_ PTP_CLEANUP_GROUP WINAPI CreateThreadpoolCleanupGroup ( VOID  )

Definition at line 1267 of file thread.c.

1268{
1270
1271 if (!set_ntstatus( TpAllocCleanupGroup( &group ))) return NULL;
1272 return group;
1273}
#define NULL
Definition: types.h:112
static __inline BOOL set_ntstatus(NTSTATUS status)
Definition: security.c:227
GLboolean GLuint group
Definition: glext.h:11120
NTSTATUS WINAPI TpAllocCleanupGroup(TP_CLEANUP_GROUP **out)
Definition: threadpool.c:2537
struct _TP_CLEANUP_GROUP TP_CLEANUP_GROUP
Definition: winnt_old.h:4523

◆ CreateThreadpoolIo()

◆ CreateThreadpoolTimer()

◆ CreateThreadpoolWait()

◆ CreateThreadpoolWork()

◆ DisassociateCurrentThreadFromCallback()

WINBASEAPI VOID WINAPI DisassociateCurrentThreadFromCallback ( _Inout_ PTP_CALLBACK_INSTANCE  pci)

◆ FreeLibraryWhenCallbackReturns()

WINBASEAPI VOID WINAPI FreeLibraryWhenCallbackReturns ( _Inout_ PTP_CALLBACK_INSTANCE  pci,
_In_ HMODULE  mod 
)

Referenced by connection_collector().

◆ IsThreadpoolTimerSet()

WINBASEAPI BOOL WINAPI IsThreadpoolTimerSet ( _Inout_ PTP_TIMER  pti)

◆ LeaveCriticalSectionWhenCallbackReturns()

WINBASEAPI VOID WINAPI LeaveCriticalSectionWhenCallbackReturns ( _Inout_ PTP_CALLBACK_INSTANCE  pci,
_Inout_ PCRITICAL_SECTION  pcs 
)

◆ QueryThreadpoolStackInformation()

WINBASEAPI BOOL WINAPI QueryThreadpoolStackInformation ( _In_ PTP_POOL  ptpp,
_Out_ PTP_POOL_STACK_INFORMATION  ptpsi 
)

◆ ReleaseMutexWhenCallbackReturns()

WINBASEAPI VOID WINAPI ReleaseMutexWhenCallbackReturns ( _Inout_ PTP_CALLBACK_INSTANCE  pci,
_In_ HANDLE  mut 
)

◆ ReleaseSemaphoreWhenCallbackReturns()

WINBASEAPI VOID WINAPI ReleaseSemaphoreWhenCallbackReturns ( _Inout_ PTP_CALLBACK_INSTANCE  pci,
_In_ HANDLE  sem,
_In_ DWORD  crel 
)

◆ SetEventWhenCallbackReturns()

WINBASEAPI VOID WINAPI SetEventWhenCallbackReturns ( _Inout_ PTP_CALLBACK_INSTANCE  pci,
_In_ HANDLE  evt 
)

◆ SetThreadpoolStackInformation()

WINBASEAPI BOOL WINAPI SetThreadpoolStackInformation ( _Inout_ PTP_POOL  ptpp,
_In_ PTP_POOL_STACK_INFORMATION  ptpsi 
)

◆ SetThreadpoolThreadMaximum()

◆ SetThreadpoolThreadMinimum()

◆ SetThreadpoolTimer()

WINBASEAPI VOID WINAPI SetThreadpoolTimer ( _Inout_ PTP_TIMER  pti,
_In_opt_ PFILETIME  pftDueTime,
_In_ DWORD  msPeriod,
_In_opt_ DWORD  msWindowLength 
)

Referenced by _MdTimer::Start(), and _MdTimer::Stop().

◆ SetThreadpoolTimerEx()

WINBASEAPI BOOL WINAPI SetThreadpoolTimerEx ( _Inout_ PTP_TIMER  pti,
_In_opt_ PFILETIME  pftDueTime,
_In_ DWORD  msPeriod,
_In_opt_ DWORD  msWindowLength 
)

◆ SetThreadpoolWait()

WINBASEAPI VOID WINAPI SetThreadpoolWait ( _Inout_ PTP_WAIT  pwa,
_In_opt_ HANDLE  h,
_In_opt_ PFILETIME  pftTimeout 
)

◆ SetThreadpoolWaitEx()

WINBASEAPI BOOL WINAPI SetThreadpoolWaitEx ( _Inout_ PTP_WAIT  pwa,
_In_opt_ HANDLE  h,
_In_opt_ PFILETIME  pftTimeout,
_Reserved_ PVOID  Reserved 
)

◆ StartThreadpoolIo()

WINBASEAPI VOID WINAPI StartThreadpoolIo ( _Inout_ PTP_IO  pio)

Referenced by init_threadpool().

◆ SubmitThreadpoolWork()

WINBASEAPI VOID WINAPI SubmitThreadpoolWork ( _Inout_ PTP_WORK  pwk)

◆ TrySubmitThreadpoolCallback()

◆ WaitForThreadpoolIoCallbacks()

WINBASEAPI VOID WINAPI WaitForThreadpoolIoCallbacks ( _Inout_ PTP_IO  pio,
_In_ BOOL  fCancelPendingCallbacks 
)

Referenced by init_threadpool().

◆ WaitForThreadpoolTimerCallbacks()

WINBASEAPI VOID WINAPI WaitForThreadpoolTimerCallbacks ( _Inout_ PTP_TIMER  pti,
_In_ BOOL  fCancelPendingCallbacks 
)

Referenced by _MdTimer::Start(), and _MdTimer::Stop().

◆ WaitForThreadpoolWaitCallbacks()

WINBASEAPI VOID WINAPI WaitForThreadpoolWaitCallbacks ( _Inout_ PTP_WAIT  pwa,
_In_ BOOL  fCancelPendingCallbacks 
)

◆ WaitForThreadpoolWorkCallbacks()

WINBASEAPI VOID WINAPI WaitForThreadpoolWorkCallbacks ( _Inout_ PTP_WORK  pwk,
_In_ BOOL  fCancelPendingCallbacks 
)

Referenced by init_funcs().