首页 > 编程语言 >C# 循环性能优化

C# 循环性能优化

时间:2023-07-18 10:57:56浏览次数:30  
标签:users C# userinfos 循环 userInfo var new 优化 ID

var users = new List<UserInfo>();
for (int i = 0; i < 100000; i++)
{
users.Add(new UserInfo
{
ID = i,
Name = "张三" + i.ToString(),
Age = "16",
Remark = "",
});
}
var userinfos = new List<UserInfo>();
for (int i = 0; i < 60000; i++)
{
userinfos.Add(new UserInfo
{
ID = 1,
Name = "张三daasd",
Age = "26",
Remark = "",
});
}

//Console.WriteLine(DateTime.Now.ToString());

//release:21秒
//foreach (var userInfo in users)
//{
// var m = userinfos.FindAll(o => o.ID == userInfo.ID);
//}

//release:23秒
//for (int i = 0; i < users.Count; i++)
//{
// var m = userinfos.FindAll(o => o.ID == users[i].ID);
//}

//release:14秒(CollectionsMarshal.AsSpan 无敌)
//foreach (var userInfo in CollectionsMarshal.AsSpan(users))
//{
// var m = userinfos.FindAll(o => o.ID == userInfo.ID);
//}

//Console.WriteLine(DateTime.Now.ToString());

标签:users,C#,userinfos,循环,userInfo,var,new,优化,ID
From: https://www.cnblogs.com/wangtiantian/p/17562223.html

相关文章

  • 纯CSS实现contain布局
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0,user-scalable=......
  • 解决 Https 站点请求 Http 接口服务后报 the content must be served over HTTPS 错误
    问题分析之前将自己所有的Http站点全部更新为Https站点,但是在请求后台接口服务的时候还是Http请求,导致部署之后,直接在控制台报Thisrequesthasbeenblocked;thecontentmustbeservedoverHTTPS;的错误解决思路因为我不想耗费精力,将所有的后台接口服务也更新为支......
  • 安装Rocky Linux8-下
    2.2安装Linux操作系统创建虚拟机之后,便可安装Linux操作系统,其安装过程与Windows系统极为相似。如果你之前安装过Windows系统,那接下来的操作就不难了。在安装RockyLinux之前,我们还需要做一件事情—— 下载一个Rocky镜像文件。2.2.1下载Rocky镜像文件什么是镜像文件?镜像文......
  • chatgpt官网登录(国内可用)入口分享
    chatgpt官网入口最chatgpt是一款非常好玩的ai智能聊天软件,才刚刚上线没多久就已经很多人迫不及待的想要下载体验了,但是想要使用软件是是需要进行官网登录注册的,为了帮助大家有更好的体验,为大家带来官网的入口地址。 虽然有使用过软件的用户都表示这个软件在国内使用其实很不......
  • 【雕爷学编程】Arduino动手做(165)---TCS34725颜色识别模块
    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题......
  • Weblogic10.3.6.0补丁安装
    将weblogic10.3的最新补丁包上传到操作系统中p31641257_1036_Generic.zip修改weblogic目录中bsu.sh文件,修改MEM_ARGS="-Xms1024m-Xmx4096m"Editthebsu.shscriptandchangememoryoptionsasfollows:MEM_ARGS="-Xms1024m-Xmx4096m"进入到目录/u01/weblogic/Orac......
  • javascript-js正则表达式-常用的正则表达式
    js常用的正则表达式1.匹配Email地址:constemailRegex=/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;2.匹配URL:consturlRegex=/^(https?:\/\/)?([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})(:[0-9]+)?(\/[^\s]*)?$/;3.匹配日期(YYYY-MM-DD):constdateRegex=/^\d{4}-(0[1-9]|......
  • 使用podman-compose快速部署应用
    我们对于docker-compose并不陌生,它是一个用于编排多个可能相互依赖的容器的工具。而PodmanCompose项目的目标是作为docker-ompose的替代品,而不需要对docker-compose.yaml文件进行任何修改。要想使用podman-compose需要先安装podman,然后安装podman-compose。Rocky8下安装po......
  • ActiveMQ单机部署
    一、ActiveMQ基础1.1、官网地址http://activemq.apache.org1.2、官网下载地址https://activemq.apache.org/components/classic/download/1.3、jdk下载地址https://www.oracle.com/java/technologies/downloads/#java18二、ActiveMQ安装2.1、安装jdk解压缩安装包到指定路......
  • 使用PCR532(PN532)读取二代身份证uid
    背景笔者住的地方大门是智能门禁锁,需要刷身份证或指纹进出,但指纹识别不灵敏经常验证失败,使用身份证可以打开,但是身份证携带不便,更糟糕的是丢失了比较麻烦,笔者通过互联网检索资料了解到二代证是一种ic卡,是遵循ISO14443TypeB协议的卡片,这种ic卡与手机nfc的频率相同,都是13.56mhz,可......