主界面读取定时器数据时如何处理?

qq_41696347 2018-01-31 05:22:48
各位大侠好,小弟写个程序,主界面上进行操作,另外一个定时器循环读取数据(100ms读一次),显示在主界面上。
主界面上修改数据后,等1秒,读取定时器给出的结果。
问题是,在主界面等1秒时,定时器也没有反应了,请问如何解决?
...全文
386 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
好比如你说你在等待别人回答问题,而实际上你是在睡觉、死掉了,那么你怎么还可能定时处理别的事情呢?这是很简单的知识。 不要滥用 Sleep+while 循环这种编程。 要学会使用定时器模式。
  • 打赏
  • 举报
回复
如果是等待n秒,是指正常地等待,也就是说当有消息来的时候就立刻处理,如果没有消息来就什么都不做,然后超过n秒就不再处理来的消息了,这才叫做“等待1秒”。 所谓 Sleep 是等待?乱讲!Sleep 是死掉、装死、阻塞的意思,根本不是等待。
  • 打赏
  • 举报
回复
什么叫做“等一秒”?你的操作是“死等(Sleep)一秒”吧?
Xiaolv2013 2018-02-01
  • 打赏
  • 举报
回复
楼主意思是在主界面操作的时候,timer不读取,操作结束 timer再读取?是这个意思吗? 一般来说在你说的操作数据的地方让timer的时间=0,等你修改结束后,再改为100 或者把Enabled属性改为false 修改以后再true
  • 打赏
  • 举报
回复
如果你有“定时器1”是每隔100毫秒显示一次数据,然后你又有另外一个“定时器2”要每隔1秒钟去读取这个显示结果,那么这叫做业务逻辑设计。只有异步编程知识才是“等待”的意思。 别纠结什么 sleep+while 式的同步顺序编程概念。这种背景下所谓的“等待”听着好听,其实是个骗人的说法,是成不了编程的大事儿的。
正怒月神 2018-02-01
  • 打赏
  • 举报
回复
有点绕啊,有点烧脑的问题。 直接说你想干嘛吧。。。说需求
FainSheeg 2018-01-31
  • 打赏
  • 举报
回复
如1#,这是什么需要,这业务逻辑也太乱了。
xiaoyu5425 2018-01-31
  • 打赏
  • 举报
回复
估计等错了,定时器也一起等了
秋的红果实 2018-01-31
  • 打赏
  • 举报
回复
贴出代码........... 主界面操作,定时器读取,再显示到主界面,又回到主界面!这是什么需求?

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧