---
title: MTLCommandQueueDescriptor
framework: metal
role: symbol
role_heading: Class
path: metal/mtlcommandqueuedescriptor
---

# MTLCommandQueueDescriptor

A configuration that customizes the behavior for a new command queue.

## Declaration

```swift
class MTLCommandQueueDescriptor
```

## Topics

### Instance Properties

- [logState](metal/mtlcommandqueuedescriptor/logstate.md)
- [maxCommandBufferCount](metal/mtlcommandqueuedescriptor/maxcommandbuffercount.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Submitting work to a GPU with Metal

- [Setting up a command structure](metal/setting-up-a-command-structure.md)
- [MTLCommandQueue](metal/mtlcommandqueue.md)
- [MTLCommandBuffer](metal/mtlcommandbuffer.md)
- [MTLCommandBufferDescriptor](metal/mtlcommandbufferdescriptor.md)
- [MTLCommandBufferError](metal/mtlcommandbuffererror-swift.struct.md)
- [MTLCommandEncoder](metal/mtlcommandencoder.md)
