我有一个针对 netcoreapp2 和 net462 的小型基准测试项目。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>netcoreapp2;net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.11.5" />
</ItemGroup>
</Project>
然而,在运行这个基准测试时,它似乎只尊重 netcoreapp 目标,而不是完整的框架目标。它指出 CLR 作业是针对 net472 运行的。我可能做错了还是这是一个问题?我只针对两个工作 [CoreJob, ClrJob]。
[主机]:.NET Core 2.0.9(CoreCLR 4.6.26614.01,CoreFX 4.6.26614.01),64bit RyuJIT Clr:.NET Framework 4.7.2(CLR 4.0.30319.42000),64bit RyuJIT-v4.7.3394.0 Core:. NET Core 2.0.9(CoreCLR 4.6.26614.01、CoreFX 4.6.26614.01)、64 位 RyuJIT
我还注意到,即使我删除了显式作业属性并且仅将我的项目定位到 net462,运行摘要仍然显示它使用 net472 执行。