2011-06-12 76 views
1

我目前正在使用C#4.0构建服务器监控应用程序,它使用WMI和一些其他库查询硬件信息(CPU/RAM/HDD使用情况)查询服务如FTP和HTTP。硬件数据查询被封装在服务器类中,软件服务在服务类中,每个服务都有一个定时器,定时器根据我设定的时间间隔定期查询相应的服务器和服务。多线程对象与WMI查询和一些其他查询

但是,由于大多数人可能知道WMI查询需要花费大量时间才能完成,并且软件服务查询将阻止调用者执行。现在我几乎完成了构建这些类(服务器和服务)的工作,现在是我考虑将它们集成到UI中的时候了。

我打算使用WPF前端,可能是nRoute框架的导航模板。但是我对WPF和多线程知之甚少。我想问的是,如何在不同线程上实例化每个Server和Service对象,以便它们不会挂起应用程序?我可以将它们添加到一个集合中,然后在前端显示它们作为列表?

任何建议和建议,非常感谢,谢谢。

回答

0

有很多选项可用。

一旦与集合,可考虑使用concurrent collections

在你的情况下,我将从线程池或手动创建线程开始,如果这不适合你,我会考虑其他选项。

+0

感谢您的建议,将尝试一下,看看它是怎么回事。欢迎任何其他建议。 – Plexion 2011-06-13 00:39:22