c# - 在 C# 中使用丢弃作为返回方法
问题描述
在 C# 中使用丢弃是否有任何性能优势?在 Visual Studio 2019 中,编辑器建议对不使用返回值的返回类型方法使用丢弃。
解决方案
根据MSDN
丢弃在应用程序代码中有意使用的临时虚拟变量。丢弃相当于未赋值的变量;它们没有价值。因为只有一个丢弃变量,并且该变量甚至可能没有分配存储空间,所以丢弃可以减少内存分配。
如您所见,您可以减少内存使用量,因为它们可能不会被分配。但确切的行为取决于代码的上下文。
丢弃的主要用例是元组,switch
表达式中的模式匹配
switch (obj)
{
case SomeType someTypeValue:
...
break;
case null:
...
break;
case object _:
...
break;
}
带out
参数的方法
if (int.TryParse(s, out _))
{
}
并且只是忽略方法的返回值_ = Task.Run(() => {...});
,就像你想要的那样。
在干净的代码方面也有很大的可用性优势。通过使用丢弃_
,您表明返回值是未使用的
推荐阅读
- react-native - 无法从 ` 解析模块 `./index`:
- c - 从包含少量关键字的文件中删除行
- c++ - 如何使用对象制作分数列表并获得平均值
- java - 使用 Hashmap 来跟踪原始计数与否
- python - Kivy 中的 ProgressBar 不会更新 UI 上的值
- python - 文件关闭后留在内存中
- c# - C# mono:在不退出的情况下启动 bash 进程
- java - 如何编写 selenium java 代码来点击搜索结果?
- html - 如何添加带有多个占位符的向下滑动搜索框?
- android - 我在 android 中面临 Flutter 应用程序的丢失连接问题