# Flush()

> Flush the device context.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.LightTransport](/engine/6000.5/script-reference/unityengine/lighttransport.md)
* **Assembly:** UnityEditor.CoreModule

```csharp
public bool Flush()
```

### Returns

| Type                                                          | Description                       |
| ------------------------------------------------------------- | --------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the flush was successful. |

### Remarks

Start execution of the enqueued operations on the device. On some platforms the underlying implementation or driver flushes automatically, on others it is up to the user to call [RadeonRaysContext.Flush](/engine/6000.5/script-reference/unityengine/lighttransport/radeonrayscontext/flush.md). The [RadeonRaysContext.Flush](/engine/6000.5/script-reference/unityengine/lighttransport/radeonrayscontext/flush.md) method returns immediately.

```csharp
using Unity.Collections;
using UnityEngine;
using UnityEngine.LightTransport;

IDeviceContext ctx = new RadeonRaysContext();
ctx.Initialize();
const int sizeInBytes = 4;
var bufferID = ctx.CreateBuffer(sizeInBytes);
using var results = new NativeArray<float>(1, Allocator.Temp);
var readEvent = ctx.CreateEvent();
ctx.ReadBuffer(bufferID.Slice<float>(), results, readEvent);
ctx.Flush();
ctx.Wait(readEvent);
ctx.DestroyEvent(readEvent);
ctx.DestroyBuffer(bufferID);
ctx.Dispose();
```

How to use Flush.
