---
title: MPSPurgeableState.nonVolatile
framework: metalperformanceshaders
role: symbol
role_heading: Case
path: metalperformanceshaders/mpspurgeablestate/nonvolatile
---

# MPSPurgeableState.nonVolatile

The contents of the resource aren’t allowed to be discarded.

## Declaration

```swift
case nonVolatile
```

## Overview

Overview Use this option to mark the resource as non-volatile so the system doesn’t discard it. This is equivalent to MTLPurgeableState.nonVolatile.

## See Also

### Constants

- [MPSPurgeableState.allocationDeferred](metalperformanceshaders/mpspurgeablestate/allocationdeferred.md)
- [MPSPurgeableState.keepCurrent](metalperformanceshaders/mpspurgeablestate/keepcurrent.md)
- [MPSPurgeableState.volatile](metalperformanceshaders/mpspurgeablestate/volatile.md)
- [MPSPurgeableState.empty](metalperformanceshaders/mpspurgeablestate/empty.md)
