Size: a a a

2020 December 17

VS

Vlad S in learn.java
Tagir
Одна нода в линкедлисте занимает в куче места как 4-6 ссылок. Естественно, линкедлист быстрее сожрёт память
Будет ли корректным замер объёма коллекции (по памяти в системе), если создадим условную коллекцию ArrayList и заполним её в цикле, например, в миллионом интов. До цикла поставим Runtime.getRuntime().totalMemory
После: ...freeMemory()

Прост если это корректный замер размера коллекции по памяти, то там разница между ArrayList и LinkedList не особо большая
источник

MM

Misha Mishailov in learn.java
Vlad
При переопределении equals, нужно контракт между equals и hashCode сохранять, поэтому hashCode тоже нужно переопределить. Как именно, нужно поискать
Благодарю!
источник

V

Vlad in learn.java
Vlad
У тебя сравнение между листом(контейнером книг) и самой книгой. Нужно воспользоваться методом contains на листе
Заодно посмотри как он работает, станет понятнее что к чему
источник

RG

Rinchin G in learn.java
Всем привет. Подскажите

у меня есть 2 сервиса: типа один планировщик заданий, второй executor
и есть rabbitmq

планировщик <-> rabbitmq <-> executor

так вот у executor есть ограничение по одновременной обработке задач

планировщик об этом ограничении знает
да, на планировщике я создам newFixedThreadPool(limit)

с него я буду отправлять задания через rabbitmq в executor
но проблемка, если бы я пользовался каким нибудь restTemplate, то в одном потоке бы дожидался результата от executor
и мой FixedThreadPool не отправил бы все задания разом на executor

а здесь же у меня нет ограничения, планировщик просто разом все отправит на rabbit,
как лучше распланировать ограничения количества заданий на rabbit?
источник

V

Vlad in learn.java
Rinchin G
Всем привет. Подскажите

у меня есть 2 сервиса: типа один планировщик заданий, второй executor
и есть rabbitmq

планировщик <-> rabbitmq <-> executor

так вот у executor есть ограничение по одновременной обработке задач

планировщик об этом ограничении знает
да, на планировщике я создам newFixedThreadPool(limit)

с него я буду отправлять задания через rabbitmq в executor
но проблемка, если бы я пользовался каким нибудь restTemplate, то в одном потоке бы дожидался результата от executor
и мой FixedThreadPool не отправил бы все задания разом на executor

а здесь же у меня нет ограничения, планировщик просто разом все отправит на rabbit,
как лучше распланировать ограничения количества заданий на rabbit?
А зачем? Очередь же для того и может использоваться, чтобы обработчик не тормозил планировщик, а обрабатывал с доступной ему скоростью. Надо только не забить ее до конца
источник

L

Loljeene in learn.java
Vlad
А зачем? Очередь же для того и может использоваться, чтобы обработчик не тормозил планировщик, а обрабатывал с доступной ему скоростью. Надо только не забить ее до конца
Поддержу
источник

RG

Rinchin G in learn.java
Vlad
А зачем? Очередь же для того и может использоваться, чтобы обработчик не тормозил планировщик, а обрабатывал с доступной ему скоростью. Надо только не забить ее до конца
спасибо, кажется идею понял, ограничение будет именно на executor и threadPool по обработке надо делать на нем
источник

V

Vlad in learn.java
Rinchin G
спасибо, кажется идею понял, ограничение будет именно на executor и threadPool по обработке надо делать на нем
https://www.rabbitmq.com/maxlength.html#overflow-behaviour
Вот так можно планировщик уведомить, что пора притормозить, очередь полная
источник

D

Dmitriy in learn.java
Выбор между Седжевиком "Алгоритмы на Java" и Лафоре "Структуры данных и алгоритмы на java".
Седжевик новее на 10 лет, да и подробнее будет. Лафоре же имеет более простой стиль изложения, легкий для понимания. Понимаю, что вкусовщина, но хотелось бы услышать мнения
источник

V

Vlad in learn.java
Dmitriy
Выбор между Седжевиком "Алгоритмы на Java" и Лафоре "Структуры данных и алгоритмы на java".
Седжевик новее на 10 лет, да и подробнее будет. Лафоре же имеет более простой стиль изложения, легкий для понимания. Понимаю, что вкусовщина, но хотелось бы услышать мнения
На курсере есть 2 курса по алгоритмам на джава от Принстона со Седжевиком кстати
источник

D

Dmitriy in learn.java
Посмотрю, спасибо за рекомендацию
источник

T

Tagir in learn.java
Vlad S
Будет ли корректным замер объёма коллекции (по памяти в системе), если создадим условную коллекцию ArrayList и заполним её в цикле, например, в миллионом интов. До цикла поставим Runtime.getRuntime().totalMemory
После: ...freeMemory()

Прост если это корректный замер размера коллекции по памяти, то там разница между ArrayList и LinkedList не особо большая
Есть специальные инструменты, чтобы измерить точно. Например, Java Object Layout
источник

VS

Vlad S in learn.java
Tagir
Есть специальные инструменты, чтобы измерить точно. Например, Java Object Layout
Спасибо! А тот, что я описал, это некорректный замер будет?
источник

T

Tagir in learn.java
Ты можешь измерить хз что. Тебе никто не гарантирует, например, что весь мусор был собран
источник

VS

Vlad S in learn.java
Tagir
Ты можешь измерить хз что. Тебе никто не гарантирует, например, что весь мусор был собран
Понял, спасибо!
источник

И

Ильнар in learn.java
Немного не по теме, но учитывая что джависты почти всегда работают с БД, пишу сюда
источник

p

p in learn.java
Hallo. Can help me?
источник

И

Ильнар in learn.java
как поставить ограничение в таблице psql чтобы поле Х заполнялось только если поле Y = null, и наоборот?
источник

Э

Эд in learn.java
Ильнар
как поставить ограничение в таблице psql чтобы поле Х заполнялось только если поле Y = null, и наоборот?
триггер, например
источник

И

Ильнар in learn.java
не поле, а данные в столбцах Х и Y
источник