摘要: 1.Array:底层数据结构都是数组; { //Array //读取快、增删慢 Console.WriteLine("***********Array*********"); int[] intArray = new int[3]; intArray[0] = 123; string[] strin 阅读全文
posted @ 2024-08-21 00:13 你好呀嗯嗯 阅读(17) 评论(0) 推荐(0)
摘要: 1.线程中的异常处理 一般线程里面不允许出现异常,需要自己处理好,最好在线程里加个try catch, #region 异常处理 //线程里面的异常是被吞掉了,因为已经脱离了try 的范围了, WaitAll 抓到多线程里面全部的异常 //线程里面不允许出现异常,自己处理好,最好在线程里加个try 阅读全文
posted @ 2024-08-18 17:20 你好呀嗯嗯 阅读(29) 评论(0) 推荐(0)
摘要: 1.Task的三种启动方式 Task.Run(() => this.DoSomethingLong("btnTask_Click")); TaskFactory taskFactory = Task.Factory; taskFactory.StartNew(() => DoSomethingLon 阅读全文
posted @ 2024-08-15 20:42 你好呀嗯嗯 阅读(39) 评论(0) 推荐(0)
摘要: 1.线程创建和启动:需要传一个无参且无返回值的委托,然后Start启动 ThreadStart threadStart = () => Console.WriteLine("btnThreads_Click"); Thread thread = new Thread(threadStart); th 阅读全文
posted @ 2024-08-13 00:35 你好呀嗯嗯 阅读(27) 评论(0) 推荐(0)
摘要: 1.可通过委托的BinginInvoke进行调用: /// <summary> /// 异步方法 /// 1.同步方法卡界面,主线程忙于计算 /// 异步多线程方法不卡界面,主线程完事了,计算任务交给子线程在做; /// 运用:提升用户体验; /// /// 2.同步方法慢,只有一个线程干活 /// 阅读全文
posted @ 2024-08-13 00:35 你好呀嗯嗯 阅读(16) 评论(0) 推荐(0)
摘要: 三种算法,调用如下: class Program { static void Main(string[] args) { //MD5 一共32位,不能解密,且不可逆 //字符串相同,结果就一定相同 mds不能解密 //针对字符串进行MD5 Console.WriteLine(MD5Encrypt.E 阅读全文
posted @ 2024-08-11 00:13 你好呀嗯嗯 阅读(36) 评论(0) 推荐(0)
摘要: 1.表达式目录树和委托的类比: 表达式目录树 是一种数据结构、是一种语法树,可以被我们解析: 2.表示式目录树的使用场景:把一个对象中的数据赋值到另一个对象当中: 实现对象值赋值: 一.反射: 二.序列化器: 三.使用表达式目录树 4.使用泛型缓存+表达式目录树 调用如下: 5.Expression 阅读全文
posted @ 2024-08-10 17:28 你好呀嗯嗯 阅读(28) 评论(0) 推荐(0)
摘要: 1.Lambda表达式:左边是参数列表, 右边是方法体(实际就是一个方法)匿名方法 2.匿名类: 3.扩展方法: 4.Linq原理: 如下所示: 5.yield关键字使用说明: 6.系统中的Where关键字,就是委托类型的泛型封装成通用代码,扩展方法,以及使用yield关键字延迟访问; 系统中的Se 阅读全文
posted @ 2024-08-08 00:47 你好呀嗯嗯 阅读(13) 评论(0) 推荐(0)
摘要: 1.判断文件夹是否存在 2.文件的数据写入 3.文件内容的读取 4.文件的复制,移动,删除 5.log日志的记录 6.三种序列化器: 阅读全文
posted @ 2024-08-07 00:51 你好呀嗯嗯 阅读(18) 评论(0) 推荐(0)
摘要: 主程序框架介绍: 1.数据库名要和类名一样,数据库字符串可加配置项: 使用如下: 2.如果数据库中设置int类型,则类中属性要加?, 同时使用反射设置值的时候需要加个null判断: 3.如果数据库的表名以tb_为前缀,则可以直接使用sql语句进行传入,例如 select * from tb_User 阅读全文
posted @ 2024-08-05 22:58 你好呀嗯嗯 阅读(15) 评论(0) 推荐(0)