Какие другие способы сделать арраист синхронизирован без использования Collections.synchronizedList()
?Сделать метод arraylist синхронизированным без использования Collections.synchronizedList()
ответ
Метод Collection.synchronizedList()
просто обертывает существующий List
, синхронизируя все методы, которые могут быть доступны из класса клиента на одном мьютексе.
Ничего более или менее, если вы хотите эмулировать поведение, самый простой способ - сделать то же самое. Но я не вижу смысла в этом.
ConcurrentLinkedQueue не является List
, но он является потокобезопасным при доступе к его элементам.
я надеюсь, что есть 2 способа,
расширяет ArrayList в свой собственный класс и переопределить каждый метод сделать его поточно включить синхронизацию
пользователя CopyOnWriteArrayList который является еще поточно версией ArrayList ,
Рассмотрите возможность использования CopyOnWriteArrayList
или других параллельных коллекций от java.util.concurrent
. Кроме того, Vector
по существу синхронизирован ArrayList
, но это также означает, что он в основном такой же, как ArrayList
, обернутый Collection.synchronizedList()
.
Если вы хотите, чтобы мы помогли вам выбрать подходящую коллекцию, укажите подробные сведения о своей задаче.
- 1. Vector vs Collections.synchronizedList (ArrayList)
- 2. Collections.synchronizedList и синхронизированный
- 3. Есть ли способ Groovy сделать метод синхронизированным?
- 4. Параллельная задача с синхронизированным arraylist
- 5. Сделать синтаксический шаблон наблюдателя синхронизированным?
- 6. Создание массива без использования Arraylist
- 7. Collections.synchronizedList передается в конструктор
- 8. Как сортировать TreeMap без использования Arraylist
- 9. Разница между синхронизированным (foo.class) и синхронизированным (SomeClass.class)
- 10. Метод инициализации сервлета с синхронизированным блоком
- 11. Как создать ArrayList без использования add-function
- 12. Чтобы передать ArrayList без использования намерения
- 13. Как сделать несуществующий (нечленский, неглобальный) метод invocable без использования eval?
- 14. блокировка клиентской стороны, требуемая в Collections.synchronizedList
- 15. Какова реальная ценность Collections.synchronizedList/synchronizedMap?
- 16. Определить метод без использования прототипа
- 17. Как сделать метод добавления объектов в ArrayList
- 18. Collections.synchronizedList vs Vector
- 19. Когда не самое подходящее время для использования Collections.synchronizedList и List?
- 20. Сделать AlertDialog без использования AlertDialog.Builder
- 21. Разница между синхронизированным (это) и синхронизированным (Thread.currentThread())
- 22. ArrayList не является потокобезопасным даже с синхронизированным блоком?
- 23. C#: Мне нужно сделать ArrayList синхронизированным, если только несколько потоков только читают его
- 24. Упорядочить метод класса ES6 без использования синтаксиса @?
- 25. Collections.synchronizedlist() удалить элемент во время итерации с конца
- 26. Почему мне нужно синхронизировать список возвращенного Collections.synchronizedList
- 27. Я хочу проверить, объявлен ли индекс ArrayList, без использования get
- 28. java ConcurrentModificationException даже с синхронизированным
- 29. Работа с элементами ArrayList без использования какого-либо цикла
- 30. Как добавить два отдельных объекта в массив без использования ArrayList?
Что вы имеете в виду? Почему вы хотите этого? –
Что именно вы спрашиваете? Что у вас есть против метода, который вы упомянули? Опишите точно, почему это не сработает для вас. –