Work Queue Identifiers

The following constants identify the standard Media Foundation work queues.

Applications should use MFASYNC_CALLBACK_QUEUE_MULTITHREADED or use a work queue obtained from MFLockSharedWorkQueue if they want to control the execution priority. Note that the default platform work queue priorities can dynamically change when an application calls RegisterPlatformWithMMCSS. For more information about work queues, see Work Queues.

Constant/valueDescription
MFASYNC_CALLBACK_QUEUE_STANDARD
0x00000001

In most cases, applications should use MFASYNC_CALLBACK_QUEUE_MULTITHREADED.

This work queue is used for synchronous operations. Using the standard work queue may run the risk of deadlocking. Applications can create a private synchronous queue on top of the multithreaded queue by using MFAllocateSerialWorkQueue.

MFASYNC_CALLBACK_QUEUE_RT
0x00000002

Not for general application use.

MFASYNC_CALLBACK_QUEUE_IO
0x00000003

Not for general application use.

This work queue is used internally for I/O operations such as reading files and reading from the network.

MFASYNC_CALLBACK_QUEUE_TIMER
0x00000004

Not for general application use.

This work queue is used for periodic callbacks and scheduled work items. The following functions put work items in this queue:

MFASYNC_CALLBACK_QUEUE_MULTITHREADED
0x00000005

This multithreaded work queue should be used in most cases.

This work queue is used for asynchronous operations throughout Media Foundation.

MFASYNC_CALLBACK_QUEUE_LONG_FUNCTION
0x00000007

Not for general application use. Applications should instead use MFASYNC_CALLBACK_QUEUE_MULTITHREADED.

In addition, the following constants are used in connection with work queues.

Constant/valueDescription
MFASYNC_CALLBACK_QUEUE_UNDEFINED
0x00000000

Undefined work queue.

MFASYNC_CALLBACK_QUEUE_PRIVATE_MASK
0xFFFF0000

Bit mask to distinguish platform work queues from those created by calling MFAllocateWorkQueue.

For a work queue created by MFAllocateWorkQueue, the following value is nonzero:

(identifier & MFASYNC_CALLBACK_QUEUE_PRIVATE_MASK)

MFASYNC_CALLBACK_QUEUE_ALL
0xFFFFFFFF

All platform work queues.

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

Mfobjects.h (include Mfidl.h)

See also

Media Foundation Constants
Work Queues
Work Queue and Threading Improvements

 

 

Community Additions

ADD
Show:
© 2014 Microsoft