Вариант предложенный вами — один из возможных. С одним исключением.
Вы это можете делать УЖЕ пока идете в то место, где хотите вставить элемент. Вам так или иначе все равно нужно это все пройти(список то односвязный).
Потому проход один.
Вторая ветка все еще достаточно сырая, да и некоторые важные фичи там отсутсвуют(например упаковка в war).
Я бы посоветовал если вы не фанат scala и проект не для поиграться всеже использовать первую ветку.
Лучше вместо того чтобы поток ходил по всем элементам в фоне, сделать кучу по времени жизни, и засыпать до момента когда нужно будет изъять ближайший.
При вставке элемента посылать потоку-уборщику interrupt(чтобы узнать что в вершине кучи мог появится элемент который нужно удалить раньше).
У меня приложение это делает само(изменяет размер серверов в зависимости от нагрузки по кастомным правилам).
Оно пыталось сделать и так и так. В обоих случаях вылетал эксепшн.
Также подтверждаю. У нас по этой причине приложения вели себя странно.
Я сегодня добрался до их тех поддержки и совместно решили.
Если коротко — при получении инстансов в проекте давало все инстансы всех.
Но изменять инстансы чужие не давало, кидало http 500.
-rws--x--x 1 root root 39320 Окт 24 21:29 /bin/su
Нет права на чтение у левого пользователя.
Эксплоит просто не знал точку входа.
Если скормить ему вывод как параметр вывод objdump -d /bin/su|grep 'exit@plt'|head -n 1|cut -d ' ' -f 1|sed 's/^[0]*\\([^0]*\\)/0x\\1/'
все сработает.
например ./mempodipper -o 0x402178
>И второе, почему же использование int[5] тогда лучше использования byte[20]?
Если честно — не знаю, возможно JIT разворачивает маленькие массивы в переменные. Для 5 это происходит а для 20 нет. Это лишь предположение, было бы интересно узнать реальную причину.
Каждый массив в Java — уже объект и полноценный наследник Object.
А каждому объекту нужны всякие доп поля, например для GC, для определения класса итд.
У icc и gcc флаги имеют разный смысл. Тоже что у gcc значит -O2 у icc «примерно» -fast.
Который выставляет -ipo, -O3, -no-prec-div, -static, и -xHost. (последние 2 как раз и делают не точным соответствие).
Вообще вопрос сравнения компиляторов намного более сложный чем «выставил одинаковый(по названию) флаг».
если у вас jira установлена бинаркой — то в нее вшита уже jdk.
У вас проблемы другого плана — она просто не обновляет ее(. Только с апдейтами самой себя, что бывает далеко не сразу после закрытия существенных дыр.
Вы это можете делать УЖЕ пока идете в то место, где хотите вставить элемент. Вам так или иначе все равно нужно это все пройти(список то односвязный).
Потому проход один.
В отсутствии gc они обычно крайне сложны, но тем не менее.
Я бы посоветовал если вы не фанат scala и проект не для поиграться всеже использовать первую ветку.
При вставке элемента посылать потоку-уборщику interrupt(чтобы узнать что в вершине кучи мог появится элемент который нужно удалить раньше).
Оно пыталось сделать и так и так. В обоих случаях вылетал эксепшн.
Я сегодня добрался до их тех поддержки и совместно решили.
Если коротко — при получении инстансов в проекте давало все инстансы всех.
Но изменять инстансы чужие не давало, кидало http 500.
Странно, у меня на sys-kernel/hardened-sources-3.1.5 c включенными PAX & Grsecurity срабатывает…
-rws--x--x 1 root root 39320 Окт 24 21:29 /bin/suНет права на чтение у левого пользователя.
Эксплоит просто не знал точку входа.
Если скормить ему вывод как параметр вывод
objdump -d /bin/su|grep 'exit@plt'|head -n 1|cut -d ' ' -f 1|sed 's/^[0]*\\([^0]*\\)/0x\\1/'все сработает.
например
./mempodipper -o 0x402178Любой массив наследует Object
>И второе, почему же использование int[5] тогда лучше использования byte[20]?
Если честно — не знаю, возможно JIT разворачивает маленькие массивы в переменные. Для 5 это происходит а для 20 нет. Это лишь предположение, было бы интересно узнать реальную причину.
А каждому объекту нужны всякие доп поля, например для GC, для определения класса итд.
Который выставляет -ipo, -O3, -no-prec-div, -static, и -xHost. (последние 2 как раз и делают не точным соответствие).
Вообще вопрос сравнения компиляторов намного более сложный чем «выставил одинаковый(по названию) флаг».
sylvestre.ledru.info/blog/sylvestre/2011/10/25/removal_of_sun_java6_from_debian
Я предполагаю, что причина почему делается именно так — смена версии jvm на 7.
У вас проблемы другого плана — она просто не обновляет ее(. Только с апдейтами самой себя, что бывает далеко не сразу после закрытия существенных дыр.
Если установлена не бинаркой — то не в курсе.
deb-ов насколько я знаю официальных нет.