ReSharper 2026.1 Help

代码检查:函数签名不能包含托管类型

此检查会报告从 Burst 编译代码调用参数类型或返回类型为托管类型的方法的情况。

Burst 方法调用必须使用与 Burst 兼容的签名。 如果被调用方法接受 object 、接口类型、类或返回托管类型,检查会在调用处发出警告。

示例

在此示例中, LogValue 方法接受一个 object 参数。 在 Burst 编译任务中调用该方法不受支持,并会被标记。

using Unity.Burst; using Unity.Jobs; [BurstCompile] public struct ExampleJob : IJob { private void LogValue(object value) { } public void Execute() { // Reported: managed parameters are not supported in Burst LogValue(null); } }
using Unity.Burst; using Unity.Jobs; [BurstCompile] public struct ExampleJob : IJob { private void LogValue(int value) { } public void Execute() { // Correct: Use Burst-compatible value types LogValue(42); } }

快速修复

此检查不提供专用的快速修复。 可通过更改被调用方法的签名或将调用移出 Burst 编译代码来手动修复。

2026年 5月 8日