JetBrains Rider 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日