Aktywne Wpisy
WykopX +943
#afera TL;DR Wykop łamie regulamin wykopu i wykopuje na główną #ama OVH z 4-letnich fake-kont. Pytania w AMA zadawane przez fake-konta z ostatnią aktywnością w 2020.
Zauważyłem ciekawą rzecz - AMA z pracownikiem OVHcloud (aktualnie ledwo 40 wykopów i jest już wykopane na głównej) wykopały 4-letnie i 3-letnie konta bez ŻADNEJ aktywności od 2020 roku.
Pytania zadawane w AMA - dziwnym przypadkiem od kont, których ostatnia aktywność była 4
Zauważyłem ciekawą rzecz - AMA z pracownikiem OVHcloud (aktualnie ledwo 40 wykopów i jest już wykopane na głównej) wykopały 4-letnie i 3-letnie konta bez ŻADNEJ aktywności od 2020 roku.
Pytania zadawane w AMA - dziwnym przypadkiem od kont, których ostatnia aktywność była 4
Krupier +206
Przegiolem co?
Podwójny Grander. Własne bułki, kurczak, boczek, ser, sałata, czerwona cebula, pomidor sosy barbecue i majonez ze skyrem.
#krupgotuje #gotujzwykopem #gotujzmikroblogiem #gotowanie #jedzenie #foodporn #przegiolemco
Podwójny Grander. Własne bułki, kurczak, boczek, ser, sałata, czerwona cebula, pomidor sosy barbecue i majonez ze skyrem.
#krupgotuje #gotujzwykopem #gotujzmikroblogiem #gotowanie #jedzenie #foodporn #przegiolemco
Mam pierwszy raz w życiu ten problem.
Przechowuję dwuwymiarową ArrayListę pewnych obiektów, powiedzmy że wygląda to tak:
ArrayList> I w zasadzie wszystko ok poza tym, że kiedy chcę iterować po obiektach i coś tam na nich robić dostaję ConcurrentModificationException. Cała aplikacja działa w Swingu. Wiem że powinienem synchronizować kolekcję, ale nie bardzo wiem w jaki sposób zrobić to poprawnie.
Kiedy zrobiłem blok synchronizowany:
synchronized(collection) {
...
}
No to dalej dostaję exceptiona. Kiedy zrobię całą metodę jako synchronized to też to samo się dzieje.
Ktoś/coś podpowie jak to ruszyć?
Ewentualnie może zmiana kolekcji na synchronizowaną normalnie z zachowaniem funkcjonalności dodawania/odejmowania ArrayList tak jak tutaj to mam?
#java #programowanie #swing
Kod byś pokazał. Tylko zobacz na sscce.org wcześniej.
Iterator iterator = lista.iterator();
while (iterator.hasNext())
{
final Cos cosTam = iterator.next();
// jakas tam logika
iterator.remove();
I nie definiuj ArrayList>, tylko List>.
@NorthPL93: O, dzięki. Zaraz sprawdzę.
Każda z klas które dziedziczą po 'Creature' (tzn. no jest tam jakieś dziedziczenie pomiędzy tą i ostatnimi, ale chodzi mi o o ostatnie dziedziczenie) mają jakiś tam priorytet działania i żeby wygodnie mi się iterowało po tym to tworzę listę, która przechowuje listy obiektów o konkretnych priorytetach. Np.
kolekcja.get(0) zwróci listę obiektów o najwyższym priorytecie.
kolekcja.get(1) zwraca mi listę obiektów o drugim najwyższym priorytecie. Itd.
Nie mogę tego pomieszać
@Wyrewolwerowanyrewolwer: No to znaczy, że masz Pan źle zaprojektowany kod.
Przykładowo
" abc ".trim()
nie zmienia swojego stanu po metodzie trim(), prawda?Chcesz powiedzieć że po wykonaniu akcji na obiekcie (np.: zmiana położenia na mapie) miałbym zwracać jego kopię z nowym stanem? Byłoby to dla mnie dość problematyczne przy ustalaniu kolejności ruchu.
@Wyrewolwerowanyrewolwer: Już to gdzieś z kimś przerabiałem na wypoku. Pozycja jakiegoś obiektu na torze czy coś... ;-)
W skrócie: obiekt nie ma położenia. Znaczy obiekt gdzieś jest, ale nie jest go świadom.
@alosha: po mojemu to zależy co tworzy, (np gierkę) bo jak chcesz potem szybko i wydajnie zdobywać te lokacje, jeśli nie są one dostępne bezpośrednio z obiektu entity z wydajność poleci na pysk, kiedy takich sprawdzen masz 5000 Na tick, a tickow 100/sec.
W systemach gdzie potrzebna jest wydajnosc, nie można przesadzać z takim podejściem