Как стать автором
Обновить
4
0.3

Пользователь

Отправить сообщение
Понятно, что это UB. Речь шла о том, что на практике (не)делают самые популярные компиляторы java — оракловый и gnu.
Но как уже отметил товарищ из соседней ветки, что не делают компиляторы, делает jit.
Вообще-то, у С ноги растут из В и совсем другой ОС, Multics.
Да, спасибо. Я выключил jit — и все отработало.
Надо будет почитать на эту тему. Как оказалось, здесь я «плаваю».
А откуда информация, что это именно jit?
Ну, так С\С++ гораздо ближе к железу. Это их «экологическая ниша». Они созданы для того, чтобы решать проблемы, которые в более высокоабстрактных (не знаю нужного термина) отсутствуют.
Так в статье же есть ссылка про сравнение
componenthouse.com/2016/12/28/comparing-the-volatile-keyword-in-java-c-and-cpp
1. Тут пример плохой (я ведь не статью писал). Здесь не очевидно, что в x может прилететь из другого треда. И вот тут и проблема: согласно java memory model, этого может никогда и не произойти. И компилятор имеет право так считать. А может и произойти.
2. Там же С++
Мне кажется, автор зря здесь упомянул Java. В данном контексте его утверждения просто опасны.
Да, на интеловых процессорах есть протокол когерентности кешей. Но java-приложение может работать на других процессорах. Этот протокол может быть выключен. В конце концов, есть распределенные java-машины.
Плюс, не забываем, что компилятор банально может такой код:
Integer x = 1;
while(x > 0) { тут не изменяем x };

оптимизировать до
while(true) {...}

(справедливости ради, самые известные компиляторы, насколько я знаю, так не делают)

Ну и volatile — это болше чем просто запись\чтение мимо кешей. Это happens before.
В остальном — очень интересно.
1. Ну и что? Любое приложение на современном ПК работает в многопоточной среде.
Но не везде же мультитрединг нужен. Почему он нужен здесь?
Добавлю:
1. а зачем в данном контексте потокозащищенность StringBuffer-а?
2. А сколько пользователь получит писем? Там же правило крона на раз в 10 минут настроено. Получается, в свой ДР он получит 144 письма.
Ну и еще были вопросы, пока читал, но когда дочитал — не все вспомнил.
Код продукта, над которым вы работаете — это коммерческая тайна?
А есть судебные прецеденты? Есть ссылки? Просто, кажется бредом. Таким образом можно сливать любые объемы информации. Нанял субподрядчиком аудитора конкурента(или какого-нибудь шпиона) — и все по закону. А доказать необходимость — это исключительно вопрос правильных формулировок.
Как вариант, можно вписать фразу, что-то вроде: «тут есть коммерческая тайна. Все, кто хочет получить к ней доступ должен пройти проверку в СБ заказчика»? Ну а на этом этапе сбривать всех остальных.
а митинги? По времени у тебя должен быть скайп на мониторе, может ты даже что-то показываешь, а на скриншотах сплошной код.
самое главное, что это обман самого себя.
Кроме вебки нужно еще генерить активность с клавиатуры и мышки (ну, тут, наверное, поможет контроллер с али) и картинку на рабочем столе.
Все это будет требовать регулярного внимания и позволит обмануть работодателя, я думаю, максимум процентов на 20.
Имхо, вместо этого лучше прочитать нужную книжку — и в среднесрочной перспективе повысить свою зарплату.
Ну а если и так верхняя позиция — лучше уж просто нанять людей и делать свой продукт.
не думаю. Айтишники очень мобильны и их везде ждут. Могут и в РБ свалить.
Разве они устанавливают трудовые часы?
Если я не ошибаюсь, только тайм треккер + определенные часы для синхронизации команды.
Кстати, а п.3 есть в договоре? Так, ради интереса.
да, добавляют. Потому, что потоков сильно больше, чем ядер.

да, я знаю. Но в реальности в голову приходит только какая-нибудь глупость, вроде синуса от синуса от… А на практике часто оказывается, что мат. модель можно изменить, например, сделать ее ассоциативной.
Либо, если результат дискретный — можно попытаться сделать иммитацию тех же спекулятивных вычислений, вроде вычисления на других ядрах наиболее вероятных результатов вычисления предыдущей операции с последующим отбрасыванием того, что не угадал.
1. с гуи как раз все намного проще.
Там куча потоков используется просто для удобства, даже не для производительности. Отдельный поток слушает нажатия кнопок, отдельный — движения мыши. А процессор видяхи — так вообще прям создан для параллельных вычислений.
2. Наверное, не все задачи параллелятся, но вот я с ходу не смог придумать такую задачу. Все, что я встречал — это просто такая реализация. И скорее всего, ноги росли из начала 2000-х, когда даже 2-процессорные компы были редкостью.
3. А почему нет? Каждой вкладке браузера можно выдать даже не по одному потоку. Отдельно для гуи, отдельно для бизнес-логики. И это, кстати, может уменьшить латенси. А то, если честно, напрягает, когда набираешь код в idea, а на экране все появляется где-то через секунду. И у меня не дохлый комп. core i7, 16 гб. памяти, ssd.

Информация

В рейтинге
2 199-й
Зарегистрирован
Активность