随笔分类 -  net / C#

摘要:Task和Thread的区别 这是一个高频,深刻的问题,无论去哪都逃不过被询问这个问题。Task是基于Thread的,这是众所周知的。但是Task和Thread的联系如此简单和纯粹确实我没想到的。甚至只需要几十行代码就能呈现其原理。一个简单的模拟实例说明Task及其调度问题,这真是一篇好文章。 任务 阅读全文
posted @ 2024-09-03 22:54 ggtc 阅读(232) 评论(0) 推荐(1) 编辑
摘要:在上一篇通信协议碰到了多线程,阻塞、非阻塞、锁、信号量...,会碰到很多问题。因此我感觉很有必要研究多线程与异步编程。 首先以一个例子开始 我说明一下这个例子。 这是一个演示异步编程的例子。 输入job [name],在一个同步的Main方法中,以一发即忘的方式调用异步方法StartJob()。 输 阅读全文
posted @ 2024-06-08 13:16 ggtc 阅读(1917) 评论(3) 推荐(5) 编辑
摘要:基于WebSocket的modbus通信(三)- websocket和串口WebSocket传递ModbusTCP数据包 错误纠正 上一篇还有个错误,就是客户端写数据时服务端不需要响应,但我的服务端响应了的。我选择改客户端,把写数据时接收到的响应丢弃。 PrintBytes(ADUMessage.Serialze(request), "请求"); if (Client ! 阅读全文
posted @ 2024-06-02 19:30 ggtc 阅读(552) 评论(0) 推荐(1) 编辑
摘要:基于WebSocket的modbus通信(二)- 客户端上一篇已经实现了ModbusTcp服务器和8个主要的功能码,只是还没有实现错误处理功能。 但是在测试客户端时却发现了上一篇的一个错误,那就是写数据成功,服务器不需要响应。 接下来要做的就是实现ModbusTcp客户端。有了清晰的协议,代码循规蹈矩的写就行了。 效果 原始数据 其中只读寄存器和线圈都有 阅读全文
posted @ 2024-06-01 13:40 ggtc 阅读(408) 评论(0) 推荐(0) 编辑
摘要:基于WebSocket的modbus通信(一)- 服务器ModbusTcp协议是基于tcp的,但不是说一定要通过tcp协议才能传输,只要能传输二进制的地方都可以。比如WebSocket协议。 但由于目前我只有tcp上面的modbus服务器实现,所以我必须先用tcp连接借助已有工具来验证我的服务器是否写正确。 效果 ModBusTCP协议报文 ModBus 阅读全文
posted @ 2024-05-31 19:20 ggtc 阅读(690) 评论(0) 推荐(3) 编辑
摘要:js我们常用这种写法 {...a,...b} C#中有时候也需要这样写,比如使用EFCore查询单表,又需要从另一张表取两个字段,两张表的字段合并到一个对象里面,最后返回一个集合 典型的就是b表只存了外键人员id,需要查询a表和a表中外键对应的姓名 比如 student { studentName, 阅读全文
posted @ 2024-03-01 14:44 ggtc 阅读(18) 评论(0) 推荐(0) 编辑

//右下角目录
点击右上角即可分享
微信分享提示