实践小记
文章平均质量分 52
默九思
学无涯
展开
-
C#-异步查询示例
使用System.Threading下的CancellationTokenSource类,进行异步操作的取消。它与 CancellationToken 配合使用,允许代码在操作不再需要继续执行时请求停止操作。原创 2024-11-08 16:01:02 · 263 阅读 · 0 评论 -
C#-日志系统
【代码】C#-日志系统。原创 2024-09-20 14:50:25 · 531 阅读 · 0 评论 -
C#-Json文件的读写
【代码】C#-Json文件的读写。原创 2024-06-18 13:47:09 · 561 阅读 · 0 评论 -
C#-懒汉单例创建
懒汉单例的创建模式,需要创建的单例直接继承该类即可。原创 2024-06-15 17:58:15 · 294 阅读 · 2 评论 -
C#-系统Timer会自动停止,使用线程进行连续性测试
C#中System.Threading.Timer的使用。利用周末时间测试了一下System.Threading.Timer的性能,发现两个问题:1、会出现一些内存泄露的问题,第一天晚上出现了Out of memory的异常,由于是深夜没有第一时间看到线程,早上发现的时候已经中止了,所以还无法完全断定是因为Timer的原因,但后续测试了一下,在跑几个小时后,timer还是会容易出现一些内存泄露的问题,当然我是在里面进行了一些逻辑处理、页面UI的展示和硬件设备的调用;原创 2024-05-27 09:39:22 · 826 阅读 · 0 评论 -
C#-根据日志等级进行日志的过滤输出
方便后期对软件进行维护,需要在一些关键处添加log日志输出,但时间长了之后会比较占用磁盘的内存;由于Log定义了不同的等级,因此可以根据等级来控制Log的具体磁盘写入。主要通过【Serilog.Core.LoggingLevelSwitch】来控制日志的输出,前提是日志写入也是用该命名空间下的ILog进行写入。原创 2024-05-24 01:00:00 · 293 阅读 · 0 评论 -
C#中System.Threading.Timer的使用
本文着重于System.Threading.Timer的简单使用方法。由于在实际开发过程中,原先使用的是System.Timers.Timer这个计时器,但在运行一段时间后,发现其会被GC自动回收掉;拜读过一些大佬的文章后,比较下来认为System.Threading.Timer 的性能会更安全一些,故此使用System.Threading.Timer 来进行疲劳方面的测试。实测下来,System.Threading.Timer仍旧会在运行一段时间后,被系统回收掉,如果需要连续性较长的测试,建议使用线程原创 2024-05-23 09:53:30 · 732 阅读 · 0 评论 -
非wpf应用程序项目【类库、用户控件库】中使用HandyControl
非wpf应用程序项目【类库、用户控件库】中使用HandyControl;或于非Wpf应用程序项目中设计时使用资源字典原创 2024-03-28 15:04:13 · 761 阅读 · 0 评论 -
winform-TreeView的添加节点&展开所有节点
如果是动态创建节点,ExpandAll()需要在创建完成后进行调用。原创 2024-01-16 00:45:00 · 855 阅读 · 0 评论 -
C#-sort()利用委托自定义排序
使用委托自定义Sort()方法,实现排序例子:演示的是对链表的排序力扣算法中等题:147、对链表进行插入排序的非标准解法。原创 2024-01-10 20:31:06 · 599 阅读 · 0 评论 -
wpf-动态设置组件【按钮为例】样式
利用Binding 将vm中的属性作为Converter的传参实现动态样式功能。创建一个Converter,返回对应的style实现对应的修改。创建一个Converter根据传参,返回相应的样式。将创建的样式与Converter的属性绑定。原创 2023-12-29 12:43:05 · 1001 阅读 · 0 评论 -
wpf-MVVM绑定时可能出现的内存泄漏问题
但很多时候,很容易出现 View上直接引用Model数据的情况;当这种情况发生时,WPF将创建静态变量绑定源(即ViewModel)的强引用,导致内存泄漏。是否调用Propertychanged实际上不重要,重要是该类是从INotifyPropertyChanged派生的,因为这回告诉WPF不要创建强引用。此时,由于 view上绑定的数据 是直接到 model 上获取的,因此会造成内存泄漏的问题。在Xmal文件不变动的情况下;会极大的破坏mvvm结构,在功能较小时,可以试用。原创 2023-12-22 17:12:41 · 871 阅读 · 1 评论 -
实践小记——C#科学计数法格式化输出
科学计数法输出格式【 string.Format(“{默认填补的数字:E尾数精度}”, 输出的小数值)】原创 2023-11-17 18:06:18 · 1622 阅读 · 0 评论 -
实践小记——C#格式化小数输出
通过上述结果可以表明;格式化小数的方式为【小数.ToString(整数位数.小数位数)】其中,整数会全部显示;小数会根据设置的位数进行 四舍五入 的取舍。原创 2023-11-17 17:42:23 · 415 阅读 · 0 评论 -
实践小记—静态成员的使用注意(或许由此产生的不知名Bug)
或许,看到这里会觉得说了许多废话,但在是实际生产中,是多人协作的方式比如,你需要完成的某个需求,是建立在前人已经完成一定功能的基础上,而前人并未考虑到该成员变量后续还需要做出更改,或者原定需求就不需要更改,因此为了代码顺手定义为static;而你在后续的开发中,使用到了这个成员,却并没有注意到你修改了该成员的引用实例,那么整个程序将会出现一些诡异的Bug。原创 2023-10-23 18:22:55 · 456 阅读 · 0 评论