Перейти к публикации

Index

User
  • Сообщений

    19 213
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    5
  • Время онлайн

    168д 17ч 28м 37с

Все публикации пользователя Index

  1. Index

    Stream by Arthas. Выживший выкидыш

    Так в любом более-менее лакшери отеле есть свои бутики. Только там нихуя нет + старое говно + оверпрайс для таких вот типо даунич которым лень до молла ближайшего прогуляться
  2. Index

    Программирование[11]

    Если хочешь роста бабок — нужно менять работу (офк не очень часто) я вот на своей сидел пока зарплата удваивалась каждые год-два. Как перестали поднимать ушел с прибавкой в 25%. Но если ты уже достиг какого-то комфортного уровня дохода (инб4: денях всегда мало) и должности на своем текущем месте, занимаешь роль какого-нибудь principal инженера, то нахуя куда-то уходить? Тут уже наоборот время играет на тебя, чем дольше ты в компании тем ты солиднее внутри компании, к тебе обращаются за экспертизой. А если ты не тупанул и не пошел по менеджерской ветке развития, то у тебя минимум стейкхолдеров, максимум технической экспертизы, ты становишься очень ДОРОГ для компании. Ну а сам ты можешь просто шитпостить в мессенджерах, заниматься различными творческими активностями и сидеть пердеть до пенсии попутно ковыряя свой петпроджект если бабок мало. Так что я не понимаю наезда на грохуфа в этом плане. Если он съебет с яндекса вряд ли он получит сильно больше. За большие бабки придется ДОКАЗЫВАТЬ и РАБотать. Плюс без личного бренда (а какой у него личный бренд? Чел которого скрывает пол продоты?) ты в новой компании будешь рядовым хуесосом на уровне рандомного залетного джуна. Только в отличие от джуна тебя ещё ебать будет сотня стейкхолдеров, потому что так просто дорогого спеца чтобы он там где-то тихо сидел и не отсвечивал никто брать не будет, с него сразу будут требовать чтобы бизнес велью вносил, брал 10 команд в подчинение и зашивался в митингах + тех задачах.
  3. Index

    Stream by Arthas. Выживший выкидыш

    Это особое течение украинского аскетизма-ухилянства
  4. Index

    Программирование[11]

    ангуляр? QA, Java-разработчики, бизнес-аналитики, продакт-менеджеры, системные аналитики, продуктовые аналитики Вот за них от мидл+ грейда столько денях наваливают Какой-нибудь гошник или раст? Щас бы на G или расте в банке писать, там есть гошники в инфре, раст возможно тоже есть в каких банкоматах, но не факт.
  5. Index

    Программирование[11]

    Щас в т-банке бонус 440к за мидла+, может кого из топана пригласить?
  6. Index

    Stream by Arthas. Выживший выкидыш

    Даже если так, возвращение жопича в родные стены будет уберошибкой. Назад то деньги никто не вернет.
  7. Index

    Stream by Arthas. Выживший выкидыш

    прополз через границу
  8. Index

    Stream by Arthas. Выживший выкидыш

    Так даунич же квартиру в винице купил хотя вряд ли раскулачат ухилянта или может он её уже продал как купил
  9. Index

    Stream by Arthas. Выживший выкидыш

    С 3 марта 2022 года возобновлено действие Меморандума о взаимопонимании о взаимной отмене визовых требований; граждане Украины, прибывающие в ОАЭ, имеют право безвизового въезда и пребывания на территории Эмиратов в соответствии с положениями вышеупомянутого Меморандума. Это че хохлам анлим на пребывание в дубаях?
  10. Index

    Stream by Arthas. Выживший выкидыш

    Ну да вот так вот из Северной Кореи Украины полетел на 7 дней первым классом ага. Я думаю тут все тривиально, какой-нибудь мелстрой (казинобоссы) вытянули жопича бабками (+связями возможно) Жопич в целом оценив перспективы сидеть дальше в украине (возможно глядя на растущие аппетиты ТЦК ) решил поддаться этому. И я думаю, что свою хохломалолетку он вполне мог оставить на родине.
  11. Index

    Stream by Arthas. Выживший выкидыш

    Мертвый тред мертвого потокера
  12. Index

    Программирование[11]

    Ничто не мешает поставить 32битную ОС на 64битный процессор. Windows 10, the last Windows operating system to support 32-bit operation, will reach End of Life in October 2025.
  13. Index

    Программирование[11]

    Вроде есть десятка винда 32битная. Ну прикинь а вот жава искаропки на 32битах позволяет с 1995 работать с 64битными примитивами. (пусть и жертвой атомарности)
  14. Index

    Программирование[11]

    Речь про 32битные операционные системы
  15. Index

    Программирование[11]

    На 32битной жаве операции чтения/записи 64битных типов не атомарны т.е в теории записывая в double какое-то значение можно прочитать мантису старую а порядок новый и получить вообще неизвестно что С 12 сентября русская айтишка би лайк это я со стейблдифьюжном новым играюсь
  16. Index

    Программирование[11]

    Там два варианта кода, один с 4-мя потоками (как у тебя), один с двумя. Второй воспроизводится (там где сетают в треде рефери).
  17. Index

    Программирование[11]

    Кто нить смог воспроизвезти этот случай? https://github.com/lantalex/jpoint-2023-semantics Там все есть для воспроизведения. Правда есть нюансы описаные автором вроде Но ты можешь запустить ./gradlew jcstress --tests "AcquireReleaseSemantic_NoConsensus_Dekker" Я получил 0, 0 2,299,189 0.23% Acceptable No winner, let's race again 0, 1 300,395,588 30.16% Acceptable Blue cat is winner 1, 0 348,571,640 34.99% Acceptable Red panda is winner 1, 1 344,825,487 34.62% Interesting Conflict На коде который уже похож на твой С++ такого нет ./gradlew jcstress --tests "AcquireReleaseSemantic_NoConsensus" 1, 1 0 0.00% Interesting Conflict Они отличаются тем что во втором случае запись идет в отдельном треде а в первом всего два @Actor public void panda(II_Result r) { RED.setRelease(this, 1); //logic of Referee#1 is here if ((int) RED.getAcquire(this) == 1 && (int) BLUE.getAcquire(this) == 0) { //red panda is the winner r.r1 = 1; } } @Actor public void cat(II_Result r) { BLUE.setRelease(this, 1); //logic of Referee#2 is here if ((int) BLUE.getAcquire(this) == 1 && (int) RED.getAcquire(this) == 0) { //blue cat is the winner r.r2 = 1; } }
  18. Index

    Программирование[11]

    Чел там оригинале джава
  19. Index

    Программирование[11]

    Попытался придумать кейс на понятном языке, Вот есть Алиса и Боб которые обмениваются шмотками на сайте доталаунж, у каждого пользователя есть свой инмемори инвентарь, обмен мы сделали eventual persistency потому что похуй на то что сделка у додеров откатится, главное общая консистентность. А чтобы была персистентность у нас есть механизм фриза инвентарей и поллинга их в базу раз в N минут например. Как написать тест который проверит что Алиса и Боб не надюпают вардожей?
  20. Index

    Программирование[11]

    Соглашусь с дуитом, тоже нихуя не понял что ты там напсевдокодил, ты часы протестил и запуск асинхронщины, молодец. А конкаренси когда тестировать будешь? Чтобы шаред стейт и датарейсы были. Виртуальное время и имитация конкаренси асинхронщиной это конечно заебись, но как мне протестировать что у меня задачи работающие на разных потоках корректно отработают с учетом всех нюансов той же упомянутой Java Memory Model, ThreadLocal и прочей хереборы?
  21. Index

    Программирование[11]

    Замокай время и сделай clock.tick до того момента как в топане сменят тему с потокосрача
  22. Index

    Программирование[11]

    Ебать вы тут насрали ходя вокруг да около. Сейчас вам батя все объяснит. Почему сложно тестировать многопоточный код: Допустим у вас есть тред(бизнес-задача) А у которого есть состояния перед локом->лок->отдал лок и тред (бизнес-задача) Б с таким же состоянием (3 состояния) Получается чтобы протестировать все поведение вам нужно в рамках теста сделать 3х3 (9 кейсов сочетаний состояний) и это только в статике. А есть ещё динамика, когда начинают в одном состоянии но другой прошел чуть быстрее а потом замедлился. А когда число состояний увеличивается количество тест кейсов растет экспоненциально. Опять же можно прибегнуть к виртуальному времени, как Vova упомянул, но это если у каждого из тредов есть возможность собственно то самое виртуальное время подсунуть. Есть точки где треды обращаются к Clock за временем. Если же там чисто CPU не ожидающий, не блокирующийся код, то виртуальное время можно засунуть в жопу. А когда в бизнес-логику напиханы точки входа для тестов. Типо давай сюда засунем Thread.sleep(clock.nanos(1)) и будем мокать клок в тестах))))0 то от такого кода хочется помыться P.S. Даже то же виртуальное время в разы лучше работает когда пишешь многопоточный код конкарент агностик вещами типо реактивщины/корутинщины https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-test/kotlinx.coroutines.test/-delay-controller/advance-time-by.html https://nexocode.com/blog/posts/fast-reactor-tests-with-virtual-time/
  23. Index

    Программирование[11]

    Unsafe это за пределами спеки, а вот https://openjdk.org/jeps/193 как раз спека. Вообще хорошо что много хитроебства становится частью стандарта, как тот же байткод ЖВМ.
  24. Index

    Программирование[11]

    Не обязательно полю быть volatile, иногда переменная может быть библиотечная например, что делать будешь?
×
×
  • Создать...