Мне нужна стратегия загрузки файлов несколькими потоками из одного каталога без случайной загрузки одного файла несколькими потоками.
Решение:
Разрешить каждому потоку последовательно собирать набор файлов для добавления в свою структуру данных, такую как arraylist и параллельный процесс.
Взять имя файла, в любом случае последнее5 цифр являются числами, у mod(last5digit,5) +1
будет выдано 1,2,3,4,5
, и соответственно те файлы с результатом мод будут обработаны соответствующими Thread 1
, ... Thread 5
.
Я хочу решение, которое не должно иметь проблемы взаимного исключения. Пожалуйста, дайте мне знать ваши комментарии из вашего опыта.