![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c#
shenhua969
这个作者很懒,什么都没留下…
展开
-
C#性能优化之Lazy<T> 实现延迟初始化
在.NET4.0中,可以使用Lazy<T> 来实现对象的延迟初始化,从而优化系统的性能。延迟初始化就是将对象的初始化延迟到第一次使用该对象时。延迟初始化是我们在写程序时经常会遇到的情形,例如创建某一对象时需要花费很大的开销,而这一对象在系统的运行过程中不一定会用到,这时就可以使用延迟初始化,在第一次使用该对象时再对其进行初始化,如果没有用到则不需要进行初始化,这样的话,使用延迟初始化就提高程序的效率,从而使程序占用更少的内存。 下面我们来看代码,新建一个控制台程序,首先创建一个Studen转载 2020-10-22 18:55:46 · 147 阅读 · 0 评论 -
WPF 使用MaterialDesign简单教程
官网地址:http://materialdesigninxaml.net/gitHub地址:https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit使用步骤:1.安装MaterialDesignThemes程序包,如下图2.在App.xaml中<Application.Resources>...原创 2019-08-21 11:48:23 · 29285 阅读 · 4 评论 -
c# 扩展方法
/// <summary> /// ConcurrentDictionary扩展 按照使用Dictionary Remove Add /// </summary> public static class ConcurrentDictionaryExt { public static bool Remove<TK...原创 2019-08-12 13:55:29 · 118 阅读 · 0 评论 -
类型语法、内存管理和垃圾回收基础
2.4 Dispose和Finalize方法在何时被调用? 由于有了垃圾回收机制的支持,对象的析构(或释放)和C++有了很大的不同,这就需要我们在设计类型的时候,充分理解.NET的机制,明确怎样利用Dispose方法和Finalize方法来保证一个对象正确而高效地被析构。 (1)Dispose方法 // 摘要: // 定义一种释放分配的资源的方法。 ...转载 2019-08-12 13:41:11 · 100 阅读 · 0 评论 -
类型语法基础和内存管理基础
一、基础类型和语法1.1 .NET中所有类型的基类是什么? 在.NET中所有的内建类型都继承自System.Object类型。在C#中,不需要显示地定义类型继承自System.Object,编译器将自动地自动地为类型添加上这个继承申明,以下两行代码的作用完全一致: public class A { } public class A : System.Object { ...转载 2019-08-12 13:38:00 · 80 阅读 · 0 评论 -
c# 静态分析
简化委托调用// 调用1 public event TcpSend Send;// 定义2 public delegate void TcpSend(Object sender, ref object o, ref bool b);原形1 if (Send != null)2 Send(this, ref s.obj, ref bSend);简化Send...原创 2019-06-21 11:11:11 · 505 阅读 · 0 评论 -
C#中实现并发的几种方法的性能测试
去年写的一个程序因为需要在局域网发送消息支持一些命令和简单数据的传输,所以写了一个C/S的通信模块。当时的做法很简单,服务端等待链接,有用户接入后开启一个线程,在线程中运行一个while循环接收数据,接收到数据就处理。用户退出(收到QUIT命令)后线程结束。程序一直运行正常(当然还要处理“TCP粘包”、消息格式封装等问题,在此不作讨论),不过随着使用的人越来越多,而且考虑到线程开销比较...转载 2019-06-13 09:21:04 · 259 阅读 · 0 评论