Реализация списка блокировки JavaJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Реализация списка блокировки Java

Сообщение Anonymous »

Я искал ответ на этот вопрос в SO и Google, но пока не смог найти подходящего решения.
Сейчас я работаю над LayerManager для решения проблемы маршрутизации графов. . Менеджер отвечает за предоставление и сброс фиксированного набора слоев.
Я хотел реализовать шаблон Consumer-Producer со списком блокировки, чтобы входящие запросы маршрутизации блокировались до тех пор, пока нет свободных слой доступен. Пока что я нашел только блокирующую очередь, но поскольку нам не нужен FIFO, LIFO, а произвольный доступ, очередь не работает. Если быть немного точнее, то должно быть возможно что-то вроде этого:

Код: Выделить всё

/* this should be blocking until a layer becomes available */
public Layer getLayer() {
for (Layer layer : layers) {
if (layer.isUnused() && layer.matches(request))
return layers.pop(layer);
}
}
Есть ли способ добиться этого?

Подробнее здесь: https://stackoverflow.com/questions/298 ... ementation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»