Kopiowanie plików(wątki)

Kopiowanie plików(wątki)
LA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5
0

Mam mały problem, a raczej szukam rady. Jak można w tym kodzie obsłużyć więcej niż 4 pliki. Pliki mają być kopiowane z folderu do folderu, muszą być 4 wątki które obsługują 4 pliki.Chciałbym, aby po zakończeniu kopiowania jednego pliku automatycznie na jego miejsce zaczynało kopiować drugi. Próbowałem użyć queue, ale wszystko zakończyło się fiaskiem. Z góry dziękuję za pomoc i przepraszam za nieład w kodzie :)
https://pastebin.com/8BX6bmM7
https://pastebin.com/smRzVgDx

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

Skoro ma się wykonywać jeden wątek po drugim, jaki jest sens ich wykorzystywania?

LA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5
0

:) Narzucone odgórnie więc nie jestem w stanie wytłumaczyć. Równocześnie w użyciu mogą być maksymalnie 4 wątki.

Koziołek
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Stacktrace
  • Postów: 6822
1

Równocześnie w użyciu mogą być maksymalnie 4 wątki.

To diametralnie zmienia zasady. Lekcja na dziś ThreadPoolExecutor i użycie Executor Framework z pulą wątków.

S9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 3573
0

Tak jak @Koziołek napisał korzystaj z pakietu java.util.concurrent (mój ukochany pakiet Javovy :) )
https://docs.oracle.com/javase/tutorial/essential/concurrency/highlevel.html tutaj masz jakiś wstępny opis, a klasa Executors dostarcza metody wytwórcze do stworzenia executor service odpowiedniego :) -> możesz stworzyć ExecutorService który ma limit :) (pod spodem też ma BlockingQueue :) )

LA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5
0

Dzięki za podpowiedź ;)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.