В настоящее время я нахожусь в процессе создания приложения для мониторинга сервера с использованием C # 4.0 , которое запрашивает информацию об оборудовании (использование CPU / RAM / HDD) с использованием WMI и некоторых других библиотек для запроса таких служб, как FTP иHTTP.Запрос данных об оборудовании инкапсулирован в класс Server, а программные сервисы находятся в классе Service, каждый из которых имеет таймер, который периодически запрашивает соответствующий сервер и сервисы с интервалом, установленным мной.
Однако, как и большинствоиз вас могут знать, что запросы WMI занимают много времени, и запросы службы программного обеспечения будут блокировать вызывающего абонента во время его выполнения.Теперь, когда я почти закончил создание этих классов (Сервер и Сервис), пришло время подумать об интеграции их в пользовательский интерфейс.
Я планирую использовать внешний интерфейс WPF, возможно, шаблон навигацииструктуры nRoute.Однако у меня очень мало знаний о WPF и многопоточности.Я хотел бы спросить, как я могу создать экземпляры всех объектов Server и Service в другом потоке, чтобы они не зависали в приложении?И могу ли я добавить их в коллекцию, а затем отобразить их в виде списка на внешнем интерфейсе?
Любые предложения и советы приветствуются, спасибо.