# AllocateNativeList<T>(int)

> Allocate a NativeList of type T from memory that's guaranteed to remain valid until ScratchpadAllocator.Rewind is called on the Scratchpad.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule

```csharp
public NativeList<T> AllocateNativeList<T>(int capacity) where T : unmanaged
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The number of items the list can hold.

### Returns

| Type                                                                               | Description            |
| ---------------------------------------------------------------------------------- | ---------------------- |
| [NativeList\<T>](/engine/7000.0/script-reference/unity/collections/nativelist1.md) | Returns the NativeList |

### Remarks

This memory isn't shared between threads and you don't need to Dispose the NativeList so it's allocated. You can't Dispose the memory to free it: it's automatically freed when [ScratchpadAllocator.Rewind](/engine/7000.0/script-reference/unity/entities/scratchpadallocator/rewind.md) is called.
