<!--
{
  "availability" : [
    "DriverKit: -",
    "iOS: -",
    "iPadOS: -",
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "DriverKit",
  "identifier" : "/documentation/DriverKit/QUEUENAME",
  "metadataVersion" : "0.1.0",
  "role" : "Macro",
  "symbol" : {
    "kind" : "Macro",
    "modules" : [
      "DriverKit"
    ],
    "preciseIdentifier" : "c:@macro@QUEUENAME"
  },
  "title" : "QUEUENAME"
}
-->

# QUEUENAME

Tells the system to execute a method on the dispatch queue with the specified name.

```
#define QUEUENAME(name)
```

## Parameters

`name`

The name of the instance variable that contains an [`IODispatchQueue`](/documentation/DriverKit/IODispatchQueue) object.

## Discussion

Add this macro to the end of your method declaration in the `.iig` file of your class. When this macro is present, DriverKit executes your method on the dispatch queue with the specified name. You must register the dispatch queues your driver uses by calling the [`SetDispatchQueue`](/documentation/DriverKit/IOService/SetDispatchQueue) method as part of your driver’s configuration. The following code listing shows the declaration of a method that handles asynchronous I/O for a USB pipe. DriverKit executes the method on a previously registered dispatch queue with the name `tx_pipe_dq`.

```swift
TxComplete (OSAction            *action,
            uint32_t             ioCompletionIndex,
            uint32_t             ioCompletionCount,
            const uint32_t       actualByteCountArray[kIOUSBHostPipeBundlingMax],
            int                  actualByteCountArrayCount,
            const kern_return_t  statusArray[kIOUSBHostPipeBundlingMax],
            int                  statusArrayCount) TYPE(IOUSBHostPipe::CompleteAsyncIOBundled) QUEUENAME(tx_pipe_dq);
```

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)