kernel32: Forward threadpool work functions to ntdll.

This commit is contained in:
Sebastian Lackner 2015-07-03 01:59:38 +02:00 committed by Alexandre Julliard
parent a54d972868
commit 1165cc0953
3 changed files with 29 additions and 4 deletions

View File

@ -234,7 +234,7 @@
# @ stub CloseThreadpoolIo
# @ stub CloseThreadpoolTimer
# @ stub CloseThreadpoolWait
# @ stub CloseThreadpoolWork
@ stdcall CloseThreadpoolWork(ptr) ntdll.TpReleaseWork
@ stdcall CmdBatNotification(long)
@ stdcall CommConfigDialogA(str long ptr)
@ stdcall CommConfigDialogW(wstr long ptr)
@ -336,7 +336,7 @@
# @ stub CreateThreadpoolIo
# @ stub CreateThreadpoolTimer
# @ stub CreateThreadpoolWait
# @ stub CreateThreadpoolWork
@ stdcall CreateThreadpoolWork(ptr ptr ptr)
@ stdcall CreateTimerQueue ()
@ stdcall CreateTimerQueueTimer(ptr long ptr ptr long long long)
@ stdcall CreateToolhelp32Snapshot(long long)
@ -1482,7 +1482,7 @@
# @ stub SortCloseHandle
# @ stub SortGetHandle
# @ stub StartThreadpoolIo
# @ stub SubmitThreadpoolWork
@ stdcall SubmitThreadpoolWork(ptr) ntdll.TpPostWork
@ stdcall SuspendThread(long)
@ stdcall SwitchToFiber(ptr)
@ stdcall SwitchToThread()
@ -1573,7 +1573,7 @@
# @ stub WaitForThreadpoolIoCallbacks
# @ stub WaitForThreadpoolTimerCallbacks
# @ stub WaitForThreadpoolWaitCallbacks
# @ stub WaitForThreadpoolWorkCallbacks
@ stdcall WaitForThreadpoolWorkCallbacks(ptr long) ntdll.TpWaitForWork
@ stdcall WaitNamedPipeA (str long)
@ stdcall WaitNamedPipeW (wstr long)
@ stdcall WakeAllConditionVariable(ptr) ntdll.RtlWakeAllConditionVariable

View File

@ -880,3 +880,24 @@ PTP_CLEANUP_GROUP WINAPI CreateThreadpoolCleanupGroup( void )
return group;
}
/***********************************************************************
* CreateThreadpoolWork (KERNEL32.@)
*/
PTP_WORK WINAPI CreateThreadpoolWork( PTP_WORK_CALLBACK callback, PVOID userdata,
TP_CALLBACK_ENVIRON *environment )
{
TP_WORK *work;
NTSTATUS status;
TRACE( "%p, %p, %p\n", callback, userdata, environment );
status = TpAllocWork( &work, callback, userdata, environment );
if (status)
{
SetLastError( RtlNtStatusToDosError(status) );
return NULL;
}
return work;
}

View File

@ -2619,8 +2619,12 @@ NTSYSAPI NTSTATUS WINAPI RtlLargeIntegerToChar(const ULONGLONG *,ULONG,ULONG,PC
/* Threadpool functions */
NTSYSAPI NTSTATUS WINAPI TpAllocCleanupGroup(TP_CLEANUP_GROUP **);
NTSYSAPI NTSTATUS WINAPI TpAllocWork(TP_WORK **,PTP_WORK_CALLBACK,PVOID,TP_CALLBACK_ENVIRON *);
NTSYSAPI void WINAPI TpPostWork(TP_WORK *);
NTSYSAPI void WINAPI TpReleaseCleanupGroup(TP_CLEANUP_GROUP *);
NTSYSAPI void WINAPI TpReleaseCleanupGroupMembers(TP_CLEANUP_GROUP *,BOOL,PVOID);
NTSYSAPI void WINAPI TpReleaseWork(TP_WORK *);
NTSYSAPI void WINAPI TpWaitForWork(TP_WORK *,BOOL);
/* Wine internal functions */