当前位置:  开发笔记 > 开发工具 > 正文

.NET秒表类限制

如何解决《.NET秒表类限制》经验,为你挑选了2个好方法。

这可能不完全不是.NET相关的问题.我正在编写一个.NET应用程序来控制一些小工具.我定期向小工具发送命令(比如每500毫秒).一旦我发送命令,我就会启动一个计时器.(.NET秒表类)

如果小工具在10毫秒内没有响应,我再次发送命令.如果确实响应,我会继续通过发送更多命令和处理响应来监控小工具状态.

我有2个或3个秒表计时器同时运行,为这个小工具做其他事情.

现在,我想监视和控制可能数以千计的这些小工具(可能高达5000).如果我为小工具创建一个对象,我将查看并行运行的10000到15000个秒表对象.我不确定秒表是如何工作的,但我认为他们依靠硬件计时器或某些东西来跟踪时间.

我的问题是,Windows可以同时处理如此大量的秒表吗?



1> Reed Copsey..:

我建议重新考虑这个设计.首先,秒表只是做它所说的 - 它就像一个秒表.如果您希望以特定间隔触发事件,则需要查看各种Timer类.

话虽这么说,我建议在小工具中分享你的计时器.您会发现一切都表现得更好,如果您创建的单个调度程序使用的计时器更少,并且调度程序管理小工具,则编写和理解可能更简单.



2> Anton Tykhyy..:

秒表只是一个保存Windows API调用结果的变量QueryPerformanceCounter(),它在"运行"时没有开销.停止再次呼叫QueryPerformanceCounter(),所以性能应该没问题.也就是说,我同意Reed Copsey,你需要重新考虑你的设计.有了这么多的小工具,我就开始考虑设备驱动程序了.

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有