RtwqAllocateWorkQueue function (rtworkq.h)

Creates a new work queue.

Syntax

HRESULT RtwqAllocateWorkQueue(
  [in]  RTWQ_WORKQUEUE_TYPE WorkQueueType,
  [out] DWORD               *workQueueId
);

Parameters

[in] WorkQueueType

A member of the RTWQ_WORKQUEUE_TYPE enumeration, specifying the type of work queue to create.

Value Meaning
RTWQ_MULTITHREADED_WORKQUEUE
Create a multithreaded work queue. Generally, applications should not create private multithreaded queues. Use the platform multithreaded queues instead.
RTWQ_STANDARD_WORKQUEUE
Create a work queue without a message loop. Using this flag is equivalent to calling RtwqAllocateWorkQueue.
RTWQ_WINDOW_WORKQUEUE
Create a work queue with a message loop. The thread that dispatches the work items for this queue will also call PeekMessage and DispatchMessage. Use this option if your callback performs any actions that require a message loop.

[out] workQueueId

Receives an identifier for the work queue that was created.

Return value

If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.

Requirements

Requirement Value
Minimum supported client Windows 8.1 [desktop apps only]
Minimum supported server Windows Server 2012 R2 [desktop apps only]
Target Platform Windows
Header rtworkq.h
Library Rtworkq.lib
DLL RTWorkQ.dll