社区
C#
帖子详情
线程应用 针对测量房间门做监测
upspringway
2012-01-16 02:18:49
针对测量房间门做监测
门实现两个动作:开,关,默认为开 界面要显示当前门的状态
运行按钮,对应房间内状态,点击运行时,门的状态置为关闭 默认为未运行状态
运行完成按钮
实现多线程监测功能
当程序启动时监测功能就开启
每0.5s查询门的状态,通过多线程来实现
当状态为运行&&门为打开状态时,多线程通过委托时间通知主程序,弹出提示对话框,运行状态转为未运行。
...全文
316
15
打赏
收藏
线程应用 针对测量房间门做监测
针对测量房间门做监测 门实现两个动作:开,关,默认为开 界面要显示当前门的状态 运行按钮,对应房间内状态,点击运行时,门的状态置为关闭 默认为未运行状态 运行完成按钮 实现多线程监测功能 当程序启动时监测功能就开启 每0.5s查询门的状态,通过多线程来实现 当状态为运行&&门为打开状态时,多线程通过委托时间通知主程序,弹出提示对话框,运行状态转为未运行。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
铜臂阿铁木
2012-01-29
打赏
举报
回复
我是从新贴传送过来的。
……
ttiimm11啊,lz没说那个门的状态模块是主动式或者被动式的吧。
主动式的状态模块真心的不需要多线程。
被动式的状态模块多不多线程那就看硬件处理模块是不是同步信号了。
一个根据现有的硬件确定软件架构的事儿有这么复杂么?还需要新开个贴去质问……
ttiimm11
2012-01-28
打赏
举报
回复
[Quote=引用 11 楼 caozhy 的回复:]
引用 9 楼 ttiimm11 的回复:
引用 8 楼 upspringway 的回复:
我也不明白为什么使用多线程,留的作业。。
因为老师就想看看你对多线程的掌握情况啊。
另:这只是一个很简单的上位机控制软件,如果将来做一个大的项目,要监控成百上千个门的时候(比如酒店的门窗管理,空调温度管理等等)那不用多线程是很可怕的。既然是作业,那就当成一个项目,好好的做,至少老师的……
[/Quote]
我做过酒店的空调管理,大约300多个监控点,包含灯的开关状态,空调的开关状态,模式,温度.....,用的是TCP/IP协议,多线程,因为空调的处理模块是被动式的,所以我开了个线程去读取每个监控点的状态。
真心的请教:
1)这样做的弊端是什么?
2)应该采用什么样的程序架构?
3)12楼Sp1234提到一个“催碎式设计”,我想我属于他说他的“表面喜欢编程,但从未做过大项目”的“新人”,在此也真心请教sp1234,类似于上述项目,应该采用什么样的设计?
以专业开发人员为伍
2012-01-23
打赏
举报
回复
至于什么“多线程”,你可以看看Timer。使用System.Threading.Timer组件本来就是多线程的,而使用System.Timers.Timer则要看你有没有给它的SynchronizingObject属性赋值。
如果赋值了就直接在这个属性所指的控件的线程上执行。比如说你直接将一个System.Timers.Timer拖入窗体,那么vs设计器就会自动把这个属性设置为窗体自己,于是它的事件就默认在窗体线程上抛出了。
使用Timer就是多线程。如果还搞什么“多线程、Sleep阻塞”作业,那么你们的老师就更让我觉得实在是太害人了。
以专业开发人员为伍
2012-01-23
打赏
举报
回复
这类滥用段时间timer的程序的干扰 --> 这类滥用短的中断间隔时间的timer的程序的干扰
以专业开发人员为伍
2012-01-23
打赏
举报
回复
除非万不得已,否则不要弄这种timer的代码。这类设计往往出自于一些表面上好像比较喜欢编程,实际上从来没有在大的实际项目中负责任地编程的人之手,这类滥用timer的设计时是非常非常有害的。
如果要监控,那么就要在房门实际上打开或者关闭时即时接收它的事件通知或者中断调用,而不是什么碎催地一遍遍每隔0.5s去判断。碎催式的设计,也许一些学生会以为是非常“通用”的一种设计,其实这在实际的工程和产品中是一种非常低级和恶劣的设计,一个产品需要基本的性能,经不起俩两三个这类滥用段时间timer的程序的干扰就会变得用户用起来一卡一卡、用户体验彻底失败了。
threenewbee
2012-01-22
打赏
举报
回复
[Quote=引用 9 楼 ttiimm11 的回复:]
引用 8 楼 upspringway 的回复:
我也不明白为什么使用多线程,留的作业。。
因为老师就想看看你对多线程的掌握情况啊。
另:这只是一个很简单的上位机控制软件,如果将来做一个大的项目,要监控成百上千个门的时候(比如酒店的门窗管理,空调温度管理等等)那不用多线程是很可怕的。既然是作业,那就当成一个项目,好好的做,至少老师的出发点是好的。
[/Quote]
如果将来做一个大的项目,要监控成百上千个门的时候(比如酒店的门窗管理,空调温度管理等等)那不用多线程是很可怕的。
如果你没有做过,就不要误导人家了。
ttiimm11
2012-01-20
打赏
举报
回复
[Quote=引用 8 楼 upspringway 的回复:]
我也不明白为什么使用多线程,留的作业。。
[/Quote]
因为老师就想看看你对多线程的掌握情况啊。
另:这只是一个很简单的上位机控制软件,如果将来做一个大的项目,要监控成百上千个门的时候(比如酒店的门窗管理,空调温度管理等等)那不用多线程是很可怕的。既然是作业,那就当成一个项目,好好的做,至少老师的出发点是好的。
upspringway
2012-01-19
打赏
举报
回复
[Quote=引用 5 楼 caozhy 的回复:]
你的问题就是你的思路,你还有什么不明白的?
倒是我不明白了,为什么要用多线程?
[/Quote]我也不明白为什么使用多线程,留的作业。。
老毕
2012-01-17
打赏
举报
回复
事件+事件响应函数,没有发现使用多线程的必要。
threenewbee
2012-01-17
打赏
举报
回复
你的问题就是你的思路,你还有什么不明白的?
倒是我不明白了,为什么要用多线程?
upspringway
2012-01-17
打赏
举报
回复
[Quote=引用 3 楼 bdmh 的回复:]
这么清晰的逻辑,你不会?线程+委托,网上搜搜一大把
[/Quote]是,我不会。 不要站着在行业里老几岁就这么傲慢!
ttiimm11
2012-01-17
打赏
举报
回复
多线程也可以。
一个线程专门用来扫描门的开关状态,以及对门的操作。
我的感觉是,LZ在提问时的思路很好,多线程,0.5秒的Sleep啊,委托啊,如何显示啊,LZ你的思路真的很清晰啊。如果你在线程或委托或其他方面有点疑惑,可以单独问。这样大家也好帮你解答。
bdmh
2012-01-16
打赏
举报
回复
这么清晰的逻辑,你不会?线程+委托,网上搜搜一大把
ttiimm11
2012-01-16
打赏
举报
回复
你的问题分了两段,其中第二段很明确的指出了你在1楼中提出的问题
upspringway
2012-01-16
打赏
举报
回复
大概讲讲思路就可以了,谢谢各位大侠!
浅谈智能电能计量管理系统在高校中的
应用
方案
本文介绍了智能电能计量管理系统的分类、主要功能并通过工程实例阐述了该系统的电气设计。
计算机类专业毕业设计(学期课程设计)题目大全
ASP 类计算机专业毕业设计题目 第 1-100 个题目 网络留言薄客户管理系统多媒体积件管理库的开发与
应用
基于 WEB的多媒体素材管理库的开发与
应用
网络教学软件中的教学设计与
应用
小型教育网站的开发与建设基于图像的风景旅游模拟漫游系统网上报名系统电脑配件网络购物房产网站计算机组成...
计算机类专业毕业设计(课程设计)题目大全
ASP 类计算机专业毕业设计题目 第 1-100 个题目 网络留言薄 客户管理系统 多媒体积件管理库的开发与
应用
基于 WEB的多媒体素材管理库的开发与
应用
网络教学软件中的教学设计与
应用
小型教育网站的开发与建设 基于图像的风景旅游模拟漫游系统 网上报名系统 电脑配件网络购物 房产网站 计算机组成原理网站 软件下载系统网站 图书管理系统 网络办公系统 电子书店管理系统 中学学生学籍管理系统 在...
亿级万物互联新时代的物联网消息中间件EMQX调研
EMQX是什么?根据官网的介绍EMQX是一款「随处运行,无限连接,任意集成」的云原生分布式物联网接入平台。EMQX 提供一体化的分布式MQTT消息服务和强大的 IoT 规则引擎,为高可靠、高性能的物联网实时数据移动、处理和集成提供动力,助力企业快速构建关键业务的 IoT 平台与
应用
。EMQ 创始人兼 CEO 李枫表示:「EMQX 5.0 是 MQTT 领域的一个里程碑式的成果。它不仅是全球首个单集群支持 1 亿连接的分布式 MQTT 消息服务器,也是首个将 QUIC 引入 MQTT 的开创性产品。
最近这里了这几年
做
过的计算机专业毕业设计题目如下:
这些题目在我的资源里部分都能找到,还有一部分没有上传完!!!上传,很辛苦有没有??、emmmmmm需要这些项目交流学习的可以评论我,也可以私信我秋——秋,秋秋hao可以看我ID.-----------------分割线---------------1.网络留言薄2.客户管理系统3.多媒体积件管理库的开发与
应用
4.基于WEB的多媒体素材管理库的开发与
应用
5.网络教学软件中的教学设计与
应用
6.小型教育...
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章