---
title: makeCommandQueue()
framework: metal
role: symbol
role_heading: Instance Method
path: metal/mtldevice/makecommandqueue()
---

# makeCommandQueue()

Creates a queue you use to submit rendering and computation commands to a GPU.

## Declaration

```swift
func makeCommandQueue() -> (any MTLCommandQueue)?
```

## Mentioned in

Setting up a command structure

## Return Value

Return Value A new MTLCommandQueue instance if the method completed successfully; otherwise nil.

## Discussion

Discussion A command queue can only submit commands to the GPU device instance that created it. important: The command queues you create with this method allow up to 64 uncompleted command buffers at time. This method is the equivalent of passing 64 to the makeCommandQueue(maxCommandBufferCount:) method.

## See Also

### Creating command queues

- [makeCommandQueue(maxCommandBufferCount:)](metal/mtldevice/makecommandqueue(maxcommandbuffercount:).md)
