dotnet C# 字典 Dictionary 和 Hashtable 的性能对比

如果没有特别的需求,请使用 Dictionary 而不是 Hashtable 原因是 Dictionary 的性能更好,本文将告诉大家 Stephen Toub 大佬的评测

从 2021 的 6 月 23 日,在 WPF 仓库里面,开始看到了性能优化狂魔 Stephen Toub 大佬给 WPF 做的性能优化

如在 Use Dictionary instead of Hashtable in EventMap by stephentoub · Pull Request #4731 · dotnet/wpf 这里可以看到,他将使用 Dictionary 替换 Hashtable 类型用来做性能提升,同时也给出了性能评测

大体来说就是 Hashtable 将会有额外的内存分配,如 Count 元素数量为 1 的时候,分配是 72B 的空间,同时在读写性能上,也不如字典来得快,性能差距大概是 10 倍左右。当哈希冲突大的时候,插入元素数量靠近分配的内存空间的时候,两者的性能差距将会从 10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C# Vlc.DotNet是一个用于在C#应用程序中集成VLC媒体播放器的类库。它提供了一组类和方法,使开发人员能够在他们的应用程序中播放视频和音频文件。这个类库包括四个项目:Vlc.DotNet.Core.Interops、Vlc.DotNet.Core、Vlc.DotNet.Forms和Vlc.DotNet.Wpf,后两者依赖于前两者。\[1\] 要使用C# Vlc.DotNet,你需要先安装.NET Core,并使用"dotnet new console"命令生成一个项目文件和基本应用程序。然后,使用"dotnet run"命令编译和运行你的应用程序。"new"命令会创建所有支持代码、obj和bin文件夹等。当你执行"dotnet run"时,实际上是"dotnet build"和"dotnet exec whatever.dll"的组合。\[2\] 如果你想查看dotnet脚本,你可以使用"dotnet tool install -g dotnet-script"命令安装dotnet-script工具。然后,你可以使用"dotnet script"命令来执行脚本文件。\[3\] #### 引用[.reference_title] - *1* [Vlc.DotNet C#音视频播放器使用说明及简单实例](https://blog.csdn.net/u011127019/article/details/52734195)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [c# vlc.dotnet_使用“ dotnet-script”全局工具的C#和.NET Core脚本](https://blog.csdn.net/cunfuteng7334/article/details/109051158)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值