- 博客(270)
- 资源 (4)
- 收藏
- 关注
原创 WPF 原子表
WPF 原子表本质是 Windows 系统原子表在 WPF 底层的应用,是 WPF 与 Win32 系统交互的桥梁。原子表溢出是 WPF 应用常见的隐性崩溃原因,尤其在多线程场景下。避免频繁创建新线程并操作 WPF 对象,这是原子表增长的主要原因复用窗口类和 Dispatcher,减少原子表项消耗使用监控工具定期检查原子表使用情况,提前发现问题。
2026-05-25 11:32:48
440
原创 对比度对焦(Contrast Focus)核心原理
利用图像在不同离焦状态下对比度不同的特性,通过 Z 轴扫描采集一系列图像,计算每张图的清晰度(梯度能量),拟合对比度–高度曲线,取曲线峰值对应的 Z 位置作为最佳对焦面,实现自动对焦。
2026-04-03 13:37:03
303
原创 光斑中心检测
SpotAlgo是一套工业级高精度光斑检测算法,核心是高斯拟合 + 亚像素定位;支持4 种输入格式,适配相机、图像文件等所有常见场景;输出完整光斑参数,可直接用于测量、控制、判定;代码结构清晰、复用性高,可直接集成到视觉项目中使用。补全缺失的PointD完整代码优化算法性能 / 精度编写单元测试适配跨平台(.NET Core/.NET 6+)
2026-03-26 15:56:14
422
原创 最小二乘法 拟合平面
本最小二乘平面拟合算法是晶圆调平系统的核心模块,基于工业通用的平面数学模型,通过矩阵运算实现最优平面求解。结合前置数据预处理机制,有效解决了 ZSensor 测量中的噪声、异常值问题,输出的 RX/RY 角度为设备调平补偿提供了精准、稳定的数据支撑。算法具备高精度、高鲁棒性、高适配性的特点,完全满足半导体设备的调平需求,同时预留了优化空间,可根据现场工况持续迭代升级。
2026-03-25 16:00:28
445
原创 C# ISerializable 允许对象控制自己的序列化/反序列化过程
只序列化部分字段不序列化临时变量不序列化大对象加密敏感数据plaintextISerializable:允许对象完全控制自身的序列化与反序列化过程。
2026-03-25 15:33:40
264
原创 抽象分类-C# 抽象层分类以及详解
C# 抽象层通过接口、抽象类、虚方法实现不同粒度的抽象,并在架构中划分为业务抽象、数据访问抽象、基础设施抽象等层次。合理运用抽象层是构建灵活、可维护系统的关键,尤其在中大型项目中能显著提升代码质量。设计时需平衡抽象程度,避免过度设计(如简单工具类无需强制抽象)。
2025-09-09 10:16:45
751
原创 数据类型序列化-封装
该配置数据管理体系通过 “接口 - 抽象类 - 具体类 - 容器类” 的层级设计,实现了 “单一配置项→复杂嵌套配置” 的全场景覆盖,兼具类型安全、灵活性、可移植性三大优势。无论是工业设备参数管理,还是软件系统设置,都能通过该体系实现标准化、可维护的配置管理,是一套设计精良的配置解决方案。
2025-09-01 11:37:00
775
原创 ModBus通讯-封装
分类底层协议数据格式校验方式传输速率拓扑结构典型应用场景Modbus RTURS-232/485二进制CRC-16总线型(1 对多)现场近距离设备通信RS-232/485ASCIILRC同 RTU(效率低 50%)总线型(1 对多)调试、低速简单场景Modbus TCPTCP/IP二进制 + MBAPTCP 校验星型 / 树型工业以太网、远程监控Modbus UDPUDP/IP二进制 + MBAP无(需应用层)同 TCP(低延迟)星型 / 组播。
2025-09-01 11:19:49
1214
原创 串口通信-封装
/ 此异步方法如果接收数据超时不会抛异常,而是返回0,所以需要判断返回值是否为0。//此异步方法如果接收数据超时不会抛异常,而是返回0,所以需要判断返回值是否为0。// 添加 ConfigureAwait(false) 避免上下文切换。// 添加 ConfigureAwait(false) 避免上下文切换。
2025-09-01 10:49:12
859
原创 客户端 -- 国际化【多语言】实现方案
3,注意点 阿拉伯左右翻转【布局需要特处理】;不同语言所需长度不相同,需要注意大小自适应;1,调用CultureInfo.CurrentCulture 获取系统设置的区域和语言;语言,子语言,货币格式,大小写、设置日期和数字格式以及比较字符串会有差异;2,可以使用 .csv,.resx,.xaml资源文件;
2024-09-02 16:07:12
391
原创 yield 详解
C#中的yield关键字:深入解析与实际应用场景的对比分析 - 非法关键字 - 博客园 (cnblogs.com)yield 语句 - 在迭代器中提供下一个元素 - C# reference | Microsoft Learn
2024-08-27 16:08:51
450
原创 单线程,多线程,异步,同步详解
在这7分钟中,原来的柜员一直与我互动,我收到现钞后,由递交给我现钞的那位柜员坐下继续负责与我互动,其余柜员去后台干别的去了。下面就是一个使用异步实现读取一个超大文件的一个代码,主程序Main()的执行并没有因ReadHeavy()函数的执行而冻结,“Read finished” 的打印在子函数ReadHeavy()中,子函数被调用的代码是在 “Read file started” 被打印之前,但其真正被执行则在其之后,且在编写这段程序的程序员手里,这段代码仅有一个线程,因此这是一个协程异步程序。
2024-08-26 20:57:11
1308
1
原创 传输控制协议-TCP
TCP协议详解概述TCP 主要的特点*TCP 是面向连接的运输层协议。应用程序在使用 TCP 协议之前,必须先建立 TCP 连接。在传送数据完毕后,必须释放已经建立的 TCP 连接*每一条 TCP 连接只能有两个端点,每一条 TCP 连接只能是点对点的(一对一)*TCP 提供可靠交付的服务。通过 TCP 连接传送的数据,无差错、不丢失、不重复,并且按序到达*TCP 提供全双工通信。TCP 允许通信双方的应用进程在任何时候都能发送数据。TCP 连接的两端都设有发送缓存和接受...
2022-04-26 14:53:07
1106
原创 流媒体协议介绍(RTP/RTCP/RTSP/RTMP/MMS/HLS)
流媒体RTP参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议。RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础。RTP协议和RTP控制协议RTCP一起使用,而且它是建立在UDP协议上的。 RTP 本身并没有提供按...
2022-04-25 15:42:24
4147
原创 Visual Studio的Performance profiler简介
最后一篇博文发表自去年圣诞节前一天,7个多月过去了,现在终于有时间坐下来,总结一下这半年的收获。这半年都没有更新博文,是因为团队组织架构调整,我的工作内容增加了很多,一句话总结就是,一个人撑起一个项目的自动化。我不仅负责UI Automation,还负责系统另外两个底层模块的集成自动化测试。自动化代码、提升效率、每天运行发regression report都在我头上。所以很忙。忙归忙,收获还是很大的,颇有成就感。原来UI自动化 + 另两个模块的集成测试是分别由3个团队各自负责,以往需要0.5个人天 * 3来
2022-04-12 13:38:23
1093
原创 如何使用 BenchmarkDotNet 对 C# 代码进行基准测试
BenchmarkDotNet 是一个轻量级,开源的,强大的 .NET 工具包,它可以将你的方法转化为基准并跟踪这些方法,最后对这些方法的性能提供一些测试报告,使用 BenchmarkDotNet 玩基准测试是非常容易的。你可以利用 BenchmarkDotNet 在 .NET Framework 和 .NET Core 应用程序上实现基准测试,在这篇文章中,我们将会讨论如何在 .NET Core 中实现基准测试。安装 BenchmarkDotNet要想使用 BenchmarkDotNet,..
2022-04-12 10:35:18
797
原创 WPF 高性能位图渲染 WriteableBitmap 及其高性能用法示例
WPF 高性能位图渲染 WriteableBitmap 及其高性能用法示例_walter lv的博客-优快云博客_wpf writeablebitmaphttps://blog.youkuaiyun.com/WPwalter/article/details/103760445
2022-04-12 09:38:49
1242
原创 C# DllImport DLL非托管动态链接库 问题总结
C#程序实现动态调用DLL的研究(转载) - 黄金海岸 - 博客园 (cnblogs.com)https://www.cnblogs.com/goldenocean/archive/2006/09/20/509558.htmlC# 调用c++ dll 尝试读取或写入受保护的内存 错误-优快云社区https://bbs.youkuaiyun.com/topics/340067302步骤:1,确定是托管动态链接库还是非托管动态链接库;2,如为C++ 等非托管动态链接库:首先确定 C++ DLL的导出类型是否.
2022-04-06 17:53:54
2054
原创 C#中使用lockbits方法处理图像
使用lockbits方法处理图像许多图像处理任务即时是最简单的文件类型转换,例如从32位深度到8位深度的格式转化,直接获得像素阵列要比使用GetPixel和SetPixel等方法的效率高得多。你可能会发现DotNet采用托管机制,大多数情况下微软会推荐你使用托管代码,理由是便捷和安全。实际应用中,直接操作内存中的数据块是很少见的,尽管如此,图像处理恰恰是这类为数不多的情况之一,因为使用托管代码的效率低的难以忍受,特别是对巨幅图像来说,在此,我们讨论一下一种新的方法。如何...
2022-03-30 11:17:13
2580
1
原创 UDP 实现可靠传输 -- 概述(一)
概述UDP不属于连接协议,具有资源消耗少,处理速度快的优点,所以通常音频,视频和普通数据在传送时,使用UDP较多,因为即使丢失少量的包,也不会对接受结果产生较大的影响。传输层无法保证数据的可靠传输,只能通过应用层来实现了。实现的方式可以参照tcp可靠性传输的方式,只是实现不在传输层,实现转移到了应用层。最简单的方式是在应用层模仿传输层TCP的可靠性传输。下面不考虑拥塞处理,可靠UDP的简单设计。1、添加seq/ack机制,确保数据发送到对端 2、添加发送和接收缓冲区,主要是用户超时重传。
2022-03-18 15:45:51
3627
原创 工业通信协议 -- OPC
OPC全称是OLE for Process Control,即用于过程控制的OLE,是针对现场控制系统的一个工业标准接口,是工业控制和生产自动化领域中使用的硬件和软件的接口标准。基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术,OPC包括自动化应用中使用的一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。提供工业自动化系统中独立单元之间标准化的互联互通,顺应了自动化系统向开放、互操作、网络化、标准化方向发展的趋势。OPC规范OP
2022-03-16 15:22:14
2808
原创 WPF-插件化编程-基础篇之 -- 动态加载 DLL
<Examples:GridViewExample x:Class="Telerik.Windows.Examples.GridView.FirstLook.Example" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" ...
2021-08-18 11:53:49
1825
原创 WPF --依赖属性详解
依赖项属性可以称得上是WPF中比较难理解的概念,为了搞清楚这个概念,我都把.NET类库进行了反编译,但是,其结果我也是想到了的,微软不是傻子,.NET那么庞大,就算能被你反编译了,你也看不懂它的代码。所以说,经过我一番研究,虽然没有把.NET的每一行代码都弄明白,不过,黄天终不负有心人,依赖项属性的使用方法与基本原理,我可以说已经弄明白了,恰巧,前两天在网上看到一篇讨论依赖项属性的文章,写得还不错,作者估计也是一位高人,再加上我个人的研究,从实际应用的角度来说,我现在已经掌握了依赖项属性的使用方法了,不
2020-10-26 14:31:34
3742
2
原创 WPF 数据模板 (三) 数据模板选择器
WPF 数据模板 (三) 数据模板选择器 前言最近项目需要动态根据属性动态选择数据模板,研究了一下写了一个数据据模板选择器 分享一下。首先了解一下 DataTemplateSelector:System.Windows.Controls.DataTemplateSelector :提供一种方式,用于根据数据对象和数据绑定元素来选择 System.Windows.DataTemplate.OK 废话不多说,直接开始编码。首先创建ConditionalDataTemplate..
2020-07-08 17:46:20
1318
原创 WPF Behavior 行为
WPF Behavior 行为前言行为是一类事物的共同特征,在WPF中通过行为可以封装一些通用的界面功能,从而实现代码重用来提高开发效率。因此他是一个非常好用的工具。引入dll文件找到System.Windows.Interactivity.dll文件。https://download.youkuaiyun.com/download/YouyoMei/12200463然后将其引入到项目中。创建行为1.创建一个行为类LightedEffectBehavior,继承Behavior<Framew
2020-07-01 11:06:25
434
depends22_x86.rar
2020-01-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅