Witam
Zacznę od początku. Mam wiele folderów (maks 200). Wszystkie foldery mają identyczną strukturę wewnętrzną (oczywiście różnią się nazwami plików). Wygląda to tak:
│ ├───518063
│ │ └───data
│ │ └───images
│ │ ├───518063.1
│ │ ├───518063.2
│ │ ├───518063.3
│ │ ├───518063.4
│ │ ├───518063.5
│ │ ├───518063.6
│ │ └───tags
│ ├───518064
│ │ └───data
│ │ └───images
│ │ ├───518064.1
│ │ ├───518064.2
│ │ ├───518064.3
│ │ ├───518064.4
│ │ ├───518064.5
│ │ ├───518064.6
│ │ └───tags
Chcę teraz zrobić minimum 3 wątki, jeden będzie kompresował pliki w folderze data, drugi wątek będzie tylko kopiował pliki z folderu tags, trzeci lub więcej wątków będą konwertować zdjęcia z PNG na JPG zawarte w folderach które znajdują się w images. Widziałem to tak żeby zrobić to w pętli gdzie pobiorę listę folderów, a następnie dla tych 3 podfolderów wywołam wątki i poczekam na ich zakończenie zanim wejdę w kolejny obrót pętli i zacznę obrabiać kolejny folder (np. 518064).
Jak poczekać na koniec wątku? Dodatkowo myślałem czy nie zrobić tego tak że zrobić 3 pętle wykonujące się niezależnie (wychodzi na to że w trzech kolejnych wątkach), dałoby mi to tyle że nie musiałbym czekać na wątek konwertujący zdjęcia tylko mógłbym dalej kompresować pliki z data i kopiować pliki z tags przez co zaoszczędziłbym czas. Zrozumiał ktoś w ogóle co chcę osiągnąć i może pomóc?