Aktywne Wpisy

Lewusx +117
Chłop 10 lat trenował, a ponad 3 lata kuł dupsko dla kawałka kartonu którego 99% nie zrozumie.
Chłop codziennie musi robić iniekcje, ważyć jedzenie, zaczynać dzień od 30min cardio, pilnować kroków, snu i trenować 2,5h, 5x w tygodniu.
Chłop skraca sobie życie świadomie, stracił większość włosów, postarzał się 15 lat, a dalej będzie to robił.
Chłop nawet nie ma z tego pieniędzy, musi płacić za każde zawody, hotele, podróże, a i tak
Chłop codziennie musi robić iniekcje, ważyć jedzenie, zaczynać dzień od 30min cardio, pilnować kroków, snu i trenować 2,5h, 5x w tygodniu.
Chłop skraca sobie życie świadomie, stracił większość włosów, postarzał się 15 lat, a dalej będzie to robił.
Chłop nawet nie ma z tego pieniędzy, musi płacić za każde zawody, hotele, podróże, a i tak
Co poprawić w sylwetce?
- Klata 31.8% (364)
- Bary 7.6% (87)
- Nogi 13.2% (151)
- Brzuch 29.8% (341)
- Plecy 17.6% (202)

_Blanche_Barton +331





List list = new CopyOnWriteArrayList<>();
ExecutorService ex = Executors.newFixedThreadPool(10);
for (int i = 0; i < 10; i++) {
ex.execute(new Runnable() {
@Override
public void run() {
for (int i = 0; i < 1000; i++) {
list.add(i);
}
}
});
}
ex.shutdown();
ex.awaitTermination(1, TimeUnit.MINUTES);
ex.shutdownNow();
System.out.println(list.size());
https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#synchronizedList-java.util.List-
https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html
https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArrayList.html
WIdać, że nie masz w tym doświadczenia więc użyj pierwszego tj. Collections.synchronizedList()
I ja wiem, że to powyżej to pewnie jakieś denne zadanie na uczelnie, żeby właśnie student zapoznał się z strukturami danych "thread-safe" i pracą z nimi. Pewnie jakieś mutexy, semafory, a koniec końców jak potem próbujesz coś poważniejszego zrobić w ten sposób o pomyłkę nie trudno, pojawiają się śmieci w
@villager: to chyba nie do mnie
@villager: niewydajny, tak. Megasłaby, nie. Wszystko zależy od tego do czego to jest potrzebne i w jakich warunkach jest używane.
@leoha: przygotowuje sie do OCP wiec te wszystkie metody musze przerobic, zastanawialem sie, czy to co chce osiagnac jest mozliwe ze zwykla arraylista i synchronized.
Problemem jest to, że dodajesz do zwykłej ArrayList elementy z wielu wątków. Z uwagi na to, że w wątku dodajesz mało elementów, a wątki tworzysz sam (co jest operacją czasochłonną) to błędy nie pojawiają się cały czas. Po
@wkoloprzegrywy: tak, mozesz owrapowac, tylko po co skoro to samo robi Collections.synchronizedList
@wkoloprzegrywy: @63274682374:
Teraz doczytałem z czym masz problem...
https://docs.oracle.com/javase/10/docs/api/java/util/concurrent/CountDownLatch.html albo join na wątkach jak już ktoś wspomniał wcześniej