GetUnsafeReadOnlyPtr
Gets a pointer to the memory buffer of a NativeArray or ReadOnly.
Read time 2 minutesLast updated 12 days ago
Definition
- Type: Method
- Namespace: Unity.Collections.LowLevel.Unsafe
- Assembly: UnityEngine.CoreModule
GetUnsafeReadOnlyPtr<T>(NativeArray<T>)
Gets a pointer to the memory buffer of a NativeArray or ReadOnly.
public static void* GetUnsafeReadOnlyPtr<T>(this NativeArray<T> nativeArray) where T : struct
Parameters
The NativeArray to check.
Returns
Type | Description |
|---|---|
| void* | The memory buffer pointer of the NativeArray. |
Remarks
When ENABLE_UNITY_COLLECTIONS_CHECKS is set (which is always the case in the Editor, but never in a built player), this method checks that the AtomicSafetyHandle associated with the NativeContainer can be read from and isn't written to from another thread. If it can't be read, a InvalidOperationException is raised. While you can write to the returned pointer, this is generally unsafe. When this method call succeeds, you're only guaranteed that reading from this pointer is safe. Writing to this pointer might lead to race conditions and crashes later during program execution.
GetUnsafeReadOnlyPtr<T>(ReadOnly)
Gets a pointer to the memory buffer of a NativeArray or ReadOnly.
public static void* GetUnsafeReadOnlyPtr<T>(this NativeArray<T>.ReadOnly nativeArray) where T : struct
Parameters
The NativeArray to check.
Returns
Type | Description |
|---|---|
| void* | The memory buffer pointer of the NativeArray. |
Remarks
When ENABLE_UNITY_COLLECTIONS_CHECKS is set (which is always the case in the Editor, but never in a built player), this method checks that the AtomicSafetyHandle associated with the NativeContainer can be read from and isn't written to from another thread. If it can't be read, a InvalidOperationException is raised. While you can write to the returned pointer, this is generally unsafe. When this method call succeeds, you're only guaranteed that reading from this pointer is safe. Writing to this pointer might lead to race conditions and crashes later during program execution.