benchmarkdotnet - 为什么在尝试打开 ConcurrencyVisualizerProfiler 数据时收到“收集无法继续,因为内核事件丢失”消息?
问题描述
在尝试使用 BenchmarkDotNet 库 (v0.11.5) 分析简单 .NET Core (v3.0) 方法的性能时,使用ConcurrencyVisualizerProfiler
放在正在测量的方法/类上的属性,我收到了一个 CvTrace 文件,因为基准。
namespace ConsoleApp2
{
[ConcurrencyVisualizerProfiler]
public class BenchmarkTest
{
[Benchmark]
public List<int> CalculatePrimesParallelly()
{
return ParallelEnumerable.Range(1, 100)
.Where(i => IsPrime(i))
.ToList();
}
}
}
当我尝试使用 Visual Studio 2017 和Concurrency Visualizer for Visual Studio 2017
插件打开它时,我收到一条消息:
由于内核事件丢失,收集无法继续。
我应该怎么做才能获得数据可视化?
解决方案
需要添加
<DebugType>pdbonly</DebugType>
<DebugSymbols>true</DebugSymbols>
将项目的 .csproj 文件放入<PropertyGroup>
元素中。
重新运行数据完成后,插件能够加载它。
推荐阅读
- scala - 如何在没有连接的情况下更改 Spark `DataFrame.map()` 操作中的架构?
- ios - 在 BottomTabNavigator 上使用 safearealayoutguide 或 SafeAreaView 删除空白
- html - 导航栏折叠使所有内容都无法点击
- python-3.x - pip install with cert 工作,但全局配置文件中的引用证书失败
- powershell - 获取 AzureRmServiceBusNamespace -Name
- python - 读取多个 CSV 文件并合并 Python Pandas
- dns - Netlify 之类的网站如何为其用户的网站生成随机域?
- docker - wget:错误的地址“github.com”
- python - 使用 MongoDB 的自定义前缀命令
- testcafestudio - TestCafe Studio - 如何将字符串转换为数字?