Middle
Koje strukture podataka u Javi su sinhronizovane, a koje nisu?
sobes.tech АИ
Одговор од АИ
U Javi, neke strukture podataka su sinhronizovane (sigurne za niti), a neke nisu.
Sinhronizovane:
Vector— sinhronizovani ekvivalentArrayList.Hashtable— sinhronizovani ekvivalentHashMap.Stack— nasleđuje odVector, pa je takođe sinhronizovan.- Kolekcije obavijene pomoću
Collections.synchronizedList(),synchronizedMap()itd. - Klase iz paketa
java.util.concurrent, na primer,ConcurrentHashMap,CopyOnWriteArrayList.
Nesinhronizovane:
ArrayListLinkedListHashMapHashSet
Ako želite da koristite nesinhronizovanu kolekciju u višepotthreadskoj sredini, možete je obaviti u sinhronizovanu pomoću metoda iz Collections ili koristiti specijalizovane klase iz java.util.concurrent.
Primer:
List<String> list = Collections.synchronizedList(new ArrayList<>());