Version: 2022.1

NativeDisableContainerSafetyRestrictionAttribute

class in Unity.Collections.LowLevel.Unsafe

切换到手册

描述

默认情况下,原生容器会由安全系统进行跟踪,以避免竞争条件。安全系统内部封装了最佳实践,并从一开始就捕获了许多竞争条件错误。

但有时,您需要指明不符合安全系统的作业和数据访问。借助此属性,您可以针对具体容器显式禁用安全系统。这为您提供了完全控制权限,但这也意味着,如果您在作业运行时对某个 NativeArray 执行 Dispose() 操作,安全系统将完全无法为您提供任何错误消息。在这种情况下,Unity 很可能会崩溃。

using Unity.Collections;
using Unity.Collections.LowLevel.Unsafe;
using Unity.Jobs;

struct MyJob : IJob { [NativeDisableContainerSafetyRestriction] NativeArray<int> unsafeArrayAccess;

public void Execute() { //... } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961