
guga
29.03.2018
17:17:43
Они могли остаться в кеше
И подхватиться бутом, если это были автоконфиги

Igor
29.03.2018
17:19:34
Но вообще я и clean не делал. Если вкратце, создавал в родительском проекте ещё один, идея накосячила и перезатерла родительский помник новым. Я его откатил, запустил и все заработало. Включен автоимпорт

guga
29.03.2018
17:20:55
Ну автоимпорт как раз клинит все

Google

Baruch
29.03.2018
17:45:10
чатег, завтра подкаст, внезапно про Джаву!!! https://www.facebook.com/events/721144991608548/

guga
29.03.2018
17:46:08
Время пинов?
Никто ещё не спит?

Baruch
29.03.2018
17:46:29

Шустрый
29.03.2018
17:50:16

Alex
29.03.2018
17:50:20
С добрым утром пацанв

Purrrr
29.03.2018
17:50:25
почему не котлин

guga
29.03.2018
17:50:33
Пару недель назад.

Nikolay
29.03.2018
17:51:27
кто-то им пользуется?
он уже дал миру все что мог дать)

guga
29.03.2018
17:52:35

Google

Nikolay
29.03.2018
17:52:36
сейчас его можно забыть)

Mikhail
29.03.2018
17:52:45
Например, OpenHAB

guga
29.03.2018
17:53:02

Mikhail
29.03.2018
17:53:25

Baruch
29.03.2018
17:53:59

Mikhail
29.03.2018
17:54:02
но OpenHAB - я пробовал завести на Идее - все очень грустно
пока рабочая мысль - писать код в Идее, а билдит в Эклипсе

Ivan
29.03.2018
17:58:14
ребят, а есть кто не ресты пишет?
если у меня приложение само читает в бесконечном цикле из сокета, как мне грамотно это в спринге сделать, чтобы в случае эксепшена или SIGINT он завершился?

Павел
29.03.2018
17:59:09

Nikolay
29.03.2018
18:00:54

Ivan
29.03.2018
18:00:54
есть приложение, для простоты:
while(???) {
Object obj = readObject();
doSomethingCool(obj);
}
что в спринге должно быть вместо вопросов?

Nikolay
29.03.2018
18:01:25
спринг тут не в тему
или у тебя спринг бут?

Ivan
29.03.2018
18:01:37
угу, бут
я понимаю что не в тему

Nikolay
29.03.2018
18:01:53
а, ну посмотри как там хук навесить

Ivan
29.03.2018
18:02:10
но слишком много завязано уже на него и всякие плюшки автоконфигурации не хочется терять

Павел
29.03.2018
18:02:47
У тебя в двух сообщениях разные вопросы

Google

Павел
29.03.2018
18:03:11
У тебя есть сервер к которому конектятся клиенты по сокету так?

Ivan
29.03.2018
18:03:19
ну на вскидку вижу только что-нибудь типа
@PreDestroy
public void close() {
stop = true
}
и в while(!stop)
ну дальше делает с ними что-то полезное

Nikolay
29.03.2018
18:04:55
или не нравится этот вариант?

Ivan
29.03.2018
18:05:32
сейчас делаю так:
@EventListener(classes = ContextStartedEvent.class)
public void start() throws Exception {
тут цикл
}
private AtomicBoolean stop = new AtomicBoolean(false);
@Override
public void close() {
stop.set(true);
}
подумал вдруг есть что умнее

Павел
29.03.2018
18:07:14
Не могу помочь. Вопрос непонятный даже на 10%

Nikolay
29.03.2018
18:07:32
он сам на него ответил уже)

Павел
29.03.2018
18:08:07
Ну тогда гуд

Ivan
29.03.2018
18:08:40

Павел
29.03.2018
18:09:36
в смысле? а что не понятно?
Что ты хочешь вообще? У меня два предпложения.
1. Если прилодение завершается ты хочешь выйти из цикла коректно
2. Если в цикле ошиька ты хочешь завершить приложение

Ivan
29.03.2018
18:09:47
и то и то )
вроде противоречий не вижу

YaOurTea
29.03.2018
18:12:17
Ох, гуга, гуга ?

Павел
29.03.2018
18:13:35

Ivan
29.03.2018
18:14:11

Павел
29.03.2018
18:14:31
Context.registerShutdownHook();
И при завершении приложения вызовутся destroy методы

Google

Павел
29.03.2018
18:15:23
В них можешь обработать выход из цикла
1. В методе аннотированом @PreDestroy
2. Заимплемнтив бин от InitializingBean,
3. Если xml вказав pre-destroy метод

Ivan
29.03.2018
18:18:27

Павел
29.03.2018
18:19:25
Ну походу да)
Я хз что за EventListener
А если ты начал внутри цикла выполнять чтото и завершаешь приложение но в цикле шаг не отработал? Ты флаг поменял и на след шаг не зайдешь, но предыдущий работает и допустим он долгий

Ivan
29.03.2018
18:47:47

Павел
29.03.2018
18:49:40

Igor
29.03.2018
20:16:12
Вроде как синхронный если не сказать иное , таким образом весь контакт будет висеть EventListener, нужно тесты писать смотреть как это работает и очень аккуратно пользоваться
Как вернуть значение из треда ? Как работает фьюча и промис (CompletableFuture) ? Норм ? Такое можно спросить на собеседовании ?

Alexander
29.03.2018
20:37:26
люди не могут объяснить что такое волатайл, а ты про комплитабл фьючу

Igor
29.03.2018
20:37:53
http://becomejavasenior.com/blog/2015/07/01/327-interview-questions-java-developer/
Вот тут опросник : раньше каждый мог на собеседовании ответит на 80-90 % вопросов
С достаточной глубиной понимания
Сейчас нет , значит ли это что это уже ненужные знания ?
Как вариант : как знание того как устроен компьютер , процессор , ассемблер итд?
С волотайлом да: до какой глубины понимания что такое волотайл нужно дойти ?

Alexander
29.03.2018
20:41:24
Какие вы знаете способы прекратить выполнение потока? - kill -9 считается?

Igor
29.03.2018
20:41:26
По кешлайнов ?

Google

Митко Соловец?
29.03.2018
20:41:28

Alexander
29.03.2018
20:41:58

Igor
29.03.2018
20:42:28
Круды тоже пилить нужно умеючи , иначе такое можно по незнанию запилить

Alexander
29.03.2018
20:44:48
122. Назовите преимущества использования коллекций. - хороший вопрос, смешной

Igor
29.03.2018
20:45:23
С волотайлом меня бы устроил ответ : атомарность , видимость изменения межу потоками

_
29.03.2018
20:45:27
В сравнении с массивами имеется ввиду

Митко Соловец?
29.03.2018
20:45:38

_
29.03.2018
20:46:00
Многие не знают

guga
29.03.2018
20:46:17

Alexey
29.03.2018
20:46:21