Я хочу реализовать приложение, имеющее поток, который пересекает все файлы на диске, в то время как другой поток проверяет условие.
При достижении условия поток, пересекающий файлы, закрывается .
У меня есть РЕЗЬБА МОНИТОРА вот так
while(true){
//--------CHECK CONDITION---------
if(MEETS_CONDITION){
//PostThreadMessage WM_QUIT to the SCANNING THREAD
break;
}
Sleep(1000);
}
И у меня СКАНИРОВАНИЕ вот так
while(true){
//-------do scanning files------------
//PeekMessage and check if it's WM_QUIT
//if it is, then BREAK.
Sleep(10000);
}
Все два потока созданы MAIN THREAD .
Может ли этометод работы?
Любые предложения будут приветствоваться.
РЕДАКТИРОВАТЬ:
поток монитора сканирует файлыне связано с потоком сканирования. Фактически, в моей программе поток монитора открывает указанный раздел реестра и проверяет, существует ли файл, на который указывает этот ключ . А в потоке сканирования проходит по всему диску, чтобы собрать файлы, соответствующие чему-то другому . Таким образом, два потока идут отдельно, а буферизация / небуферизация файлов не разделяется на два потока.
В результате поток сканирования собирает файлы через диск, и однажды определенный файл указывается некоторымиRegkey удаляется, поток сканирования останавливается сразу после продолжающегося сканирования . Я зацикливаю эту процедуру сканирования, потому что хочу, чтобы вновь созданные файлы могли быть также включены в проверку.