- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 C#单例模式
通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化对个对象,一个最好的办法就是,让类自身负责保护它的唯一实例。lock语句: lock是确保当一个线程位于代码的临界区时,另一个线程不进入临界区,如果其他线程试图进入锁定的代码,则它已知等待(即被阻止),指导该对象被释放。这段代码使得对象实例由最先进入的那个线程创建,以后的线程在进入时不再去创建对象实例了。在多线程程序中,注意是同时访问Singleton类,调用GetInstance()方法,会可能造成创建多个实例的。1、可以保证唯一的实例。
2025-03-22 14:32:51
924
原创 C#BeginInvoke编程基础(一)
2、委托类型烦的 BeginInvoke(<输入和输出变量>,AsyncCallBack callback,object ayncState)方法:异步调用的核心。6、返回值,IAsyncResult 异步操作状态接口,封装了异步执行中的参数。4、第二个参数callback,回调函数,表示异步调用结束后,自动调用的方法。5、第三个参数ayncState,用于想回调函数提供相关的参数信息。异步总结:1、通过委托异步调用 Task2。表示委托对应的方法实参。一、异步编程的核心:委托。2、异步执行,先定义委托。
2025-03-20 08:45:57
325
原创 第2章、WPF窗体及其属性
描述: 该属性用于设置窗口的样式,可能的值包括None、SingleBorderWindow、ThreeDBorderWindow和ToolWindow。这两种模式都允许用户调整窗体大小,但 CanResizeWithGrip 在右下角显示一个调整大小的手柄,提供更直观的提示。描述: 该属性用于设置窗口启动时的初始位置,可能的值包括Manual、CenterOwner和CenterScreen。固定大小的窗口或对话框。如果未设置 Width 和 Height,窗体的大小可能不合适,内容可能超出窗体边界。
2025-03-12 12:33:38
974
原创 C# Excel开源操作库MiniExcel使用教程
目前主流框架大多需要将数据全载入到内存方便操作,但这会导致内存消耗问题,MiniExcel 尝试以 Stream 角度写底层算法逻辑,能让原本1000多MB占用降低到几MB,避免内存不够情况。逻辑 : 以 Test1,000,000x10.xlsx 做基准与主流框架做性能测试,总共 1,000,000 行 * 10 列笔 “HelloWorld”,文件大小 23 MB。Q. 保存如何取代MiniExcel.SaveAs(path, value),文件存在系统会报已存在错误?
2025-03-08 18:00:56
1663
原创 C#联合Halcon相机实时采集
C#联合Halcon相机实时采集1、界面设置2、打开相机 /// <summary> /// 打开相机 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sende
2021-11-11 15:08:55
1530
原创 C#联合Halcon读取图像文件
C#联合Halcon读取图像文件1、添加引用2、界面编写3、读取图片 /// <summary> /// 采集图像 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(obj
2021-11-11 14:18:08
1967
原创 SQLServer 数据完整性设计与实现
一、数据完整性设计1、观察并分析如下示例数据表中的数据2、总结分析1)当前表中存在不准确、不一致的数据,则数据库“失去了完整性”。2)数据完整性破坏一般有数据库设计不合理导致,应避免出现。3、数据完整性概念1)能确保存储在数据库中的数据的准确性和一致性。二、完整性约束的类型1、常用三种类型的约束保证数据完整性三、实体的完整性1、作用:保证实体具有唯一标识2、方法:主键约束、标识列、唯一约束。四、主键约束与唯一约束1、添加约束的基本语法2、约束名的取名规则推荐采用:约束类型_约束字
2020-05-09 15:17:22
2461
原创 SQLServer 数据的操作总结
一、插入实体1、插入实体(数据行)语法2、插入实体的SQL语句示例3、注意事项1)列名个数=对应值的个数2)非值类型的数据,必须放在单引号内。3)数据值的类型必须与定义的字段类型一致。二、查询实体1、基本查询语法2、查询实体的SQL语句示例三、T-SQL中的运算符1、数据库常用的运算符号四、更新实体1、更新实体语法2、更新实体的SQL语句示例五、删除实体1、删除数据表中的数据语法2、删除实体的SQL语句示例...
2020-05-09 13:51:23
319
原创 SQLServer数据表的创建总结
一、创建数据表1、建表的语法2、列的特征包含的内容1)是否为空(NULL):在输入数据时,数据库的列允许为空时,可以不输入数据,否则必须输入。列是否为空要根据数据库设计的具体要求决定,对于关键列必须禁止为空。2)是否是标识列(自动编号)3)是否有默认值:如果数据表的某列在用户不输入数据的时候,希望提供一个默认的内容,比如:用户如果不输入学员地址,则默认‘地址不详’。4)是否为主键:主键是实体的唯一标识,保证实体不被重复,一个数据表必须有主键才有意义。新建和删除实体都可能回出现异常。二、标识列的
2020-05-09 11:39:39
4987
原创 SQLServer中的数据类型总结
一、SQLServer数据类型1、文本类型:字符数据包含任意字母、符号或数字字符组合。2、整数类型3、精确数字类型4、近似数字(浮点)类型5、日期类型6、货币类型7、位类型8、二进制类型...
2020-05-09 09:48:25
2659
原创 SQLServer 数据库的创建总结
一、数据库的分类1、通过查看对象资源管理器来区分数据库类型二、用户数据库文件组成1、数据库物理文件的组成:数据库文件+日志文件2、一个数据库必须,且只能包含一个mdf,但可以有多个ndf和Idf(至少一个)三、创建数据库文件1、创建一个主数据库文件和一个日志文件2、文件组类似于文件夹,主要用于管理磁盘空间,文件组分为主文件组和次文件组,日志文件不属于任何文件组。3、生成的数据库文件存放在D盘的DB文件中。四、创建多个数据文件和日志文件...
2020-05-09 09:25:25
830
原创 数据库服务的运行与登录
一、打开数据库服务1、数据库服务 :SQL Server(MSSQLServer)1)运行在服务器端的应用程序,提供数据的存储、处理和事物等。2)在使用DBMS客户端之前,必须首先打开该服务。2、打开与关闭的方式1)在操作系统的服务中启动与关闭。2)在运行窗口中使用启动和关闭服务的命令。通过命令符3)通过SQL Server Configuration Manager启动和停止。...
2020-05-09 08:11:32
1478
原创 数据库与数据库管理系统(DBMS)
一、实体的概念与数据库1、客观存在的事物都是实体。2、实体数据的存储要求:必须按照一定的分类和规律存储。3、数据库:专门用来存储这些实体信息的数据集合。4、数据库的特点:1)海量存储数据,数据检索非常方便。2)保持数据信息的一致,完整,并实现数据的共享和安全。3)通过组合分析,产生新的有用的信息。二、实体存储的基本单元1、数据表:实体信息存储的基本单元,同类实体存放在同一个表中,表又称为实体的集合。2、数据表的其他名词:1)行(记录):实体2)列(字段):实体的属性三、不同实体的存储
2020-05-08 20:49:50
1911
原创 上位机开发中基于C#编写的Modbus类库
基于C#编写MODBUS类库1、读保持寄存器 功能码032、读输出状态 功能码013、强制单线圈 功能码054、预置单字保持型寄存器 功能码0x065、预置双字保持型寄存器 功能码0x10大家可以看到,代码的可读性增强了很多,也变得更加简洁,而且这种方式非常通用,所有的报文拼接都可以使用这种方式。...
2020-04-26 13:22:55
5411
4
原创 Modbus RTU通信
一、通讯分类1、串行通讯 以要传输的一个8bits的数据为例,时钟为1Hz;串行总线可以只用一根线,在8s之内传完。 优点:1)传输距离远 。2)占用资源少。 缺点:1)发送速度慢。2、并行通讯 以要传输的一个8bits的数据为例,时钟为1Hz;串行总线可以用8根根线,在8s之内传完。 优点:1)发送速度快。 ...
2020-04-26 12:21:56
2062
原创 TIA PORTAL V15 安装在出现PG/PC接口空白的解决方案
最近在Win10系统中安装TIA PORTAL V15 ,安装完成后发现PG/PC接口为空白。经过一阵的研究发现问题所在,原因是:问题原因是“S7DOS Help Service”服务未运行。解决办法如下: 1、打开服务,找到 S7DOS Help Service . 2、将 S7DOS Help Service 从“禁用”改成“自动”。 ![在这里插入图片描述](...
2019-12-30 16:06:55
16520
4
原创 TIA Wincc Advanced 如何将变量自动归档到SQL SERVER数据库
TIA WinCC Advanced自身没有数据库系统,因此在数据归档上沿袭了精智屏的做法,将数据记录在CSV、TXT文件中。不过考虑到TIA WinCC Advanced是运行在PC机上面的,因此西门子也为它适当的增强了这方面的功能,那就是我们也可以通过简单的配置将TIA WinCC Advanced的历史数据归档到数据库里面。 下面介绍这种归档的使用方法。 一、建立ODBC数据源。...
2019-12-18 13:44:53
6609
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人