> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IDStorageQueueX::EnqueueSignal

> IDStorageQueueX::EnqueueSignal

# IDStorageQueueX::EnqueueSignal

Enqueues a fence write.

## Syntax

```cpp theme={null}
void EnqueueSignal(  
         ID3D12Fence *fence,  
         UINT64 value  
)  
```

### Parameters

*fence*\
Type: ID3D12Fence

An `ID3D12Fence` to enqueue.

*value*\
Type: UINT64

The value to write to the fence.

### Return value

Type: void

## Remarks

The fence is signaled when all requests enqueued before the fence complete.

A title thread can wait for the fence or poll the fence. The GPU can also poll
the fence.

If the `EnqueueSignal` method fills half of the queue's capacity since the last
submission, it triggers an automatic submission as part of the `EnqueueSignal`
call.

In most cases, this method simply does a memory write to the queue, thus takes
very little CPU time to complete. However, if automatic submission is triggered,
it takes significantly more CPU time, including a kernel mode transition and
processing all of the previously submitted requests in the caller thread.

If automatic submission is not desirable, games are recommended to use a queue
with large enough capacity and call [Submit](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_submit) manually
when appropriate.

For more information, see the "Notification" and
"EnqueueStatus/EnqueueSignal/EnqueueSetEvent" sections in [DirectStorage
overview](/build/console-features/storage/directstorage/directstorage-overview).

## Requirements

**Header:** dstorage\_xs.h

**Library:** dstorage\_xs.lib

**Supported platforms:** XBOX Series consoles

## See also

[IDStorageQueueX::EnqueueStatus](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_enqueuestatus)\
[IDStorageQueueX](/reference/system/dstorage/interfaces/IDStorageQueueX/idstoragequeuex)\
[DStorage](/reference/system/dstorage/dstorage_members)


## Related topics

- [IDStorageQueueX::EnqueueStatus](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_enqueuestatus.md)
- [IDStorageQueueX1::EnqueueSetEvent](/reference/system/dstorage/interfaces/IDStorageQueueX1/methods/idstoragequeuex_enqueuesetevent.md)
- [IDStorageQueueX::EnqueueRequest](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_enqueuerequest.md)
- [IDStorageQueueX](/reference/system/dstorage/interfaces/IDStorageQueueX/idstoragequeuex.md)
- [IDStorageQueueX::Submit](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_submit.md)
