Привет, ребята,резьбы для обработки бесконечных РАБОТУ
Я создал нить, что сканирование для некоторых файлов на рабочем столе и делать какие-то действия с этим. Проблема в том, что процесс этого потока происходит только один раз - при проверке файлов.
Моей целью этой темы является сканирование каталогов в любое время без остановки , но без создания переполнения процессора. Я хочу использовать умный способ предотвратить остановку этого сканирования.
Действие с файлами должно проверить, есть ли определенный контент, который должен быть там, я просматриваю этот контент во всех файлах.
Я пытался использовать стиль в while
бесконечного цикла:
public void bwScanning()
{
while(true)
{
// the whole code of scanning goes here.
}
}
Но это слишком рискованно из-за системы откачки ресурсов с этим циклом.
Я думал о нескольких вещах, как создать умный код:
Run нить таймер с задержкой в 20 секунд. Но тогда я не знаю, каково количество файлов и сколько времени требуется для процесса сканирования dirs.
Возможно, создайте количество потоков - после завершения первого потока создайте новый один. Я думаю, что это очень смешно, чтобы использовать этот путь из-за нового творчества и использования памяти.
Некоторые люди, столкнувшиеся с одной и той же проблемой, могут мне посоветовать?
Я не знаю, что вам нужно сделать с файлами, которые вы найдете, но это звучит, как вы, возможно, захотите посмотреть на [ ' FileSystemWatcher'] (http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx) –
@DaveZych ok, я прочитаю об этом. –
Вы заглянули в 'Thread.Sleep()' для приостановки потока. Я не уверен, что вы подразумеваете под _pumping системных ресурсов с помощью этого цикла? – hylander0