ConvertExistingNativeListToNativeArray<T>(ref NativeList<T>, int, AllocatorHandle)
Convert NativeList into a NativeArray.
Read time 1 minuteLast updated 15 hours ago
Definition
- Type: Method
- Namespace: Unity.Collections
- Assembly: UnityEngine.ManagedKernelModule
ConvertExistingNativeListToNativeArray<T>(NativeList<T>, int, AllocatorHandle)
public static NativeArray<T> ConvertExistingNativeListToNativeArray<T>(ref NativeList<T> nativeList, int length, AllocatorManager.AllocatorHandle allocator) where T : unmanaged
Parameters
NativeList to be converted.
The count of elements.
The Allocator to use.
Returns
Type | Description |
|---|---|
| NativeArray<T> | Returns the NativeArray that was created. |
Remarks
There is a caveat if users would like to transfer memory ownership from the NativeList to the converted NativeArray. NativeList implementation includes two memory allocations, one holds its header, another holds the list data. After convertion, the converted NativeArray holds the list data and dispose the array only free the list data. Users need to manually free the list header to avoid memory leaks, for example after convertion call, AllocatorManager.Free(allocator, nativeList.m_ListData);