【c# – 在两种不同的场景中锁定性能】教程文章相关的互联网学习教程文章

c#-使用Microsoft.office.Interop.Excel读取Excel时性能降低【代码】

使用Microsoft.office.Interop.Excel从Excel中读取并使用Range dataRange =(Range)cSheet.Cells [row,col];时,性能很慢.当我删除范围dataRange =(Range)cSheet.Cells [row,col];它更快.我错过了什么.我应该改变什么?int rows = cSheet.UsedRange.Rows.Count; int cols = cSheet.UsedRange.Columns.Count;for (int row = 2; row <= rows; row++) {for (int col = 1; col <= cols; col++){Range dataRange = (Range)cSheet.Cells[ro...

C#-NServiceBus v5.0是否需要性能计数器?

我最近将我的小型项目从NServiceBus 4.6升级到了5.0.1.平滑接口更改之后,我现在在运行时崩溃,并显示以下消息:System.InvalidOperationException was unhandledMessage: An unhandled exception of type ‘System.InvalidOperationException’ occurred in mscorlib.dllAdditional information: NServiceBus performance counter for Critical Time is not set up correctly. Please run Install-NServiceBusPerformanceCounters c...

C#-委托创建时性能不足【代码】

我有一个带有存储库模式的应用程序.它允许我通过LINQ操作对象,对象存储在内存中,因此我可以非常快速地访问它们.这里是一个示例代码:private Measurement ParseExact(AgentParameter agentParameter) {ControlledElement ce;using (var repositoryBase = Datastore.GetRepository<ControlledElement>()){var mvId = Convert.ToInt32(agentParameter.ControlledParameterId);var sId = Convert.ToInt32(agentParameter.FacilityId);...

c#-桌面应用程序中的应用程序见解不会发送性能计数器

我正在按照these instructions将App Insights添加到Windows桌面应用程序.我在代码中添加了一些TrackMetric和TrackException调用,这些数据正在门户中很好地显示,因此我知道基本的管道工作正常. 基于these instructions,然后我将AI.Web NuGet程序包添加到我的项目中(是的,我知道这听起来很奇怪,但是特别推荐),并禁用了配置文件中除以下模块/初始化程序之外的所有模块: >诊断遥测模块> DependencyTrackingTelemetryModule> Performan...

Node.js vs C#for Azure Functions:如何选择性能和集成

Node.js和C#在Azure Functions中都被描述为第一类支持. 是否有使用Node.js和C#的比较文档(或反馈)? 我担心的是Azure集成和性能 选择Node.js或C#的用例是什么(语言首选项除外)解决方法:我们正在努力确保一流的语言(例如C#和Node)之间没有功能上的差距. 您可能会注意到两种情况之间的性能差异很小,具体取决于场景,但是我们正在尝试确保它们之间的差异可以忽略不计(例如,当前,由于编译要求,您可能会注意到C#的启动时间较慢,但是我们将...

c#-提高EF查询性能-检查行是否存在于预取列表中【代码】

我有以下(广义)查询:var listOfPossibleCars= new List<string>(); var listOfCars = db.Cars.Where(s => listOfPossibleCars.Contains(s.CarName)).ToList();但是listOfPossibleCars很大,任何包含数十万条记录.此查询导致延迟,我想知道如何改进它.解决方法:无需使用内存中的集合来执行此操作,而是将listOfPossibleCars的数据插入数据库中具有正确定义的索引和分区的临时表中,并使这种情况发生在数据库中.使用正确定义的表,数据库...

C#/.NET-最小并行化的Quicksort导致性能下降【代码】

我目前正在为List类开发递归并行的Quicksort扩展功能.下面的代码代表了我所考虑的最基本的线程分配标准,因为从概念上讲,它应该是最简单的.它分支到检测到的处理器数量的以2为底的对数的深度,并从那里顺序进行.因此,每个CPU应该获得一个线程,该线程具有(大致)相等的大量数据要处理,从而避免了过多的开销时间.提供了基本的顺序算法进行比较.public static class Quicksort {/// <summary>/// Helper class to hold information about...

c#-在Azure队列上调用CreateIfNotExistsAsync()对性能的影响

我应该在Azure队列上的每次读/写之前调用CreateIfNotExistsAsync()吗? 我知道它会导致REST调用,但是它在队列上执行任何IO吗? 我正在将.Net库用于Azure Queue(如果此信息很重要).解决方法:该方法所做的只是尝试创建队列并捕获AlreadyExists错误,您可以通过在尝试访问队列时捕获404来轻松地复制自己.势必会影响性能. 更重要的是,它增加了您的成本:从Understanding Windows Azure Storage Billing – Bandwidth, Transactions, and...

C#练习题答案: 性能#3 - 填写一个Int-数组矩阵 - 极品飞车最高【难度:2级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战【代码】

性能#3 - 填写一个Int-数组矩阵 - 极品飞车最高【难度:2级】: 答案1: using System; using System.Linq;public static class Kata {private static int[] cache = Enumerable.Range(0,4000000).ToArray();public static int[] Performance() => cache; }? 答案2: using System; using System.Linq;public static class Kata {static Kata(){array = new int[4000000];for(int i=0;i<4000000;i++){array[i] = i;}}private static i...

C#-WPF中的性能

我的工作是在WPF中开发一个小型2D游戏.我看到了很多很酷的用Silverlight编写的游戏.我的问题是:WPF是否为此目的有相同的要求?在这里(http://www.microsoft.com/showcase/en/us/details/b83db72d-bc0e-4423-88fc-99d7a77d60e5)我在Silverlight中发现了一个非常酷的游戏.我想在WPF中开发几乎相同的东西.是否存在性能问题或类似问题? 提前致谢!解决方法:Silverlight是WPF的(非严格)子集.在WPF中,像Blend这样的工具可以很好地工作(...

有没有人比较用Xamarin C#和Java编写的Android应用程序的性能基准(代码和结果)?

我遇到Xamarin声称他们在Android上的Mono实现和他们的C#编译应用程序比Java代码更快.有没有人在不同的Android平台上对非常相似的Java和C#代码执行实际基准来验证此类声明,是否可以发布代码和结果? 2013年6月18日新增 由于没有答案,也找不到其他人做的基准,所以决定自己做测试.不幸的是,我的问题仍然是“锁定”,所以我不能将其作为答案发布,只编辑问题.请投票重新打开这个问题.对于C#,我使用了Xamarin.Android Ver. 4.7.09001(测试...

C#性能优化总结

1. C#语言方面 1.1 垃圾回收 垃圾回收解放了手工管理对象的工作,提高了程序的健壮性,但副作用就是程序代码可能对于对象创建变得随意。1.1.1 避免不必要的对象创建 由于垃圾回收的代价较高,所以C#程序开发要遵循的一个基本原则就是避免不必要的对象创建。以下列举一些常见的情形。1.1.1.1 避免循环创建对象 ★ 如果对象并不会随每次循环而改变状态,那么在循环中反复创建对象将带来性能损耗。高效的做法是将对象提到循环外面创...

C# 程序集数量对软件启动性能的影响【代码】【图】

本文通过很多的数据测试分析在一个项目引用很多个外部项目和将外部项目的类合并到一个项目之间的启动性能的不同。 通过分析知道了如果一个项目引用了很多项目,而且在启动过程会全部调用这些项目,这时的软件性能会比将这些项目的代码合并到一个项目的慢很多 本文的数据为 预编译框架,开发高性能应用 - 课程 - 微软技术暨生态大会 2018 - walterlv 提供最近在做一个编译器相关的项目,这个项目是将多个库作为源代码的 nuget 包,这...

为什么C#性能比VB慢【代码】

我有两个库,第一个是在vb.net中完成的原始文件,第二个是在c#中. 做同样的事情. vb.net比c#快10%左右,非常奇怪 所以我发现这似乎是减速的原因,通过查看两者的IL代码是(我会说接近99%的il代码是相同的); >在c#中,所有方法调用都有hidebysig但不在vb.net中 这一件事可能是性能问题吗?>在c#中,您必须在使用之前初始化局部变量 这不会在c#中工作void test() {int a;a += 1; }这将void test() {int a = 0;a += 1; }而这工作在vb.netSu...

C#中BackgroundWorker的性能问题【代码】

我对C#中的BackgroundWorker性能有一个奇怪的问题.我有一个应用程序,除其他外,使用BackgroundWorker来执行某些任务. Basicaly的任务如下:public void simulate(Image imgSimulator){simulador = new Simulator(imgSimulator);simulador.setBackground(0);Constants.finishSimulation = false;BackgroundWorker bw = new BackgroundWorker();bw.DoWork += run;bw.RunWorkerAsync(imgSimulator);}public void run(object sender, Do...