У меня есть список массивов, который я использую в своем многопоточном приложении, и я хочу, чтобы способ каким-то образом смотрел через массив, не вызывая никаких исключений, когда я добавляю элемент в список по мере того, как я итерации. Есть ли способ остановить изменение списка массивов, пока я перехожу через него? Это попытка ответить на мой вопрос. Проблема заключается в том, что итерация займет немного времени процессора, потому что список будет очень большим, а действие, которое я хочу выполнить на каждом элементе, займет немало времени. Это проблема, если я использую синхронизированные методы, потому что метод ADD будет блокироваться в течение большого количества времени и снижать производительность приложения. Итак, что я пытаюсь сделать, это создать класс, который подражает списку массива, за исключением того, что когда он «заблокирован», и метод пытается изменить его, он сохранит этот запрос, и когда список «разблокирован», он выполнит все запросы в отдельном потоке. Проблема в том, что когда я пытаюсь реализовать эту стратегию, я должен сохранить запросы в каком -то списке и столкнуться с теми же проблемами, которые я делаю раньше, с необходимостью блокировать возможность добавлять в список запросов, в то время как поток запроса итерации по запросам. Я не хочу реализовать это решение, или даже если оно правильное. Если бы кто -то мог бы помочь мне, это было бы очень оценено.
Подробнее здесь: https://stackoverflow.com/questions/420 ... anner-java