Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

Rooster

Программирование, т. 8

  

315 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

 

 

почистит только ссылку на объект (но не сам объект), которая создалась в ходе работы метода
 

Ну да ок, но объекты будут первого поколения и будут очищены в первой же итерации GC

Поделиться сообщением


Ссылка на сообщение

что такое "стековые объекты"? объекты, созданные внутри метода не умирают сразу же, умирают только ссылки на них (т.к на стеке хранятся только примитивы и ссылки на объекты, сами объекты в любом случае всегда хранятся в хипе). соответственно созданный внутри метода объект умрет тогда, когда gc решит его подчистить (естественно при отсутствии каких либо ссылок на объект), а удаление фрейма со стека (завершение метода) почистит только ссылку на объект (но не сам объект), которая создалась в ходе работы метода

он вероятно говорил про всякие оптимизации в hotspot jvm потипу скаляризации


 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение
(изменено)

Пизда. Так и пришлось самому садиться и рисовать на svg ебучие линии в иерархичной таблице :fffuuu:  Оказалось что это супер изи делать. Ваще никаких либ не юзал, тупа методом здравого смысла и пристального взгляда. В итоге за 2 часа сделал полностью задачу, которую ждуны больше недели ковыряли :zloy:

Канеш сделал супер коряво. Брал оффсеты чилда и парента, вычислял между ними расстояние по горизонтали и вертикали, создавал прямоугольник, абсолютно позиционировал и рисовал между ними линию с изгибами, состоящую из 5ти path-элементов :trollface:

 

post-33804-0-44738300-1549195454_thumb.png

 


Изменено пользователем DIMAN123456789

Поделиться сообщением


Ссылка на сообщение

Чет не понял а нахуя пять path вместо одного


Shaman.png.0cdd33d48561cd068bb3c5ee78289381.png Anna.jpeg.03c9b49363298ceec256500a5d522f7d.jpeg Nigga.jpg.f807f2556bdbf68452292a9301494591.jpg

 

Поделиться сообщением


Ссылка на сообщение
(изменено)

Чет не понял а нахуя пять path вместо одного

потому что я тупой и не смог разобраться быстро как всё это в одну запихать, постоянно что-то отваливалось :lolpalm:

Я ваще вышел в овер архитектурные задачки решать, а тут всплыла эта залупа и отвлёкся на неё.


Изменено пользователем DIMAN123456789

Поделиться сообщением


Ссылка на сообщение

я в paint-е лучше нарисую!

Поделиться сообщением


Ссылка на сообщение
(изменено)
поток может изменить значение переменной НО У СЕБЯ В КЕШЕ, все остальные потоки об этом не узнают, volatile запрещает потокам это делать, но на практике это не решает проблему состояния гонки, зато существенно замедляет работу с этой переменной, я даж сходу не могу придумать реальный пример, где volatile реально помогло.

 

 

 

Кеш это супер важная хуйня - если сравнивать скорость работы кеша 1-2 лвл, кеша 3лвл и оперативы, то кеш 1-2 уровня будет феррари, кеш 3 уровня запорожец, а оператива - велосипедист.

 

 

Ну так volatile наоборот будет стараться хранится в кеше и в одном экземпляре, а не оперативе+кеше+регистрах где-нибудь как обычная переменная видимая из нескольких потоков.

 

Офк будут микрозатраты на на перемещение кеш-регистры в многопоточных средах.

 

Ты напутал аппаратный и програмный кэши. В C++ volatile вообще изначально оперделено как "храни меня в кеше проца семпай"

 

 

я даж сходу не могу придумать реальный пример, где volatile реально помогло.

Правильный многопоточный синглтон с двойной синхронизацией проверкой.


Изменено пользователем Index

Поделиться сообщением


Ссылка на сообщение

кароче ушел в ирл искать любую бомже работу

 

 

 

5-6 лет назад просил у родителей "поддержки" хтяб 1к баксов на переезд(хоть кудато) и ремонт зубов, хуй там (на отлично учился в универе) (я еще работал паралельно учебе)

похуй давно на них, дебильных родственников тудаже, три года не общался ни с кем из них

 

сегодня у них опять идеи бизнеса блять (с 00-х тратят на все эти орифлеймы, МММ пирамиды, страховки, и други обманы с телика/реклам десятки тыщ бакосв в год, буквально(деньги у них есть))

сами как бомжи живут никуда не ездят, имбы 10% от выкинутых денег в год хватилоб им на любой отдых в любой стране блять

 

пиздец как это дизморалит

съебать бы хоть кудато

до чего этот классный регион доводит, пиздец нидайбох тут остаться

 

 

Поделиться сообщением


Ссылка на сообщение

кароче ушел в ирл искать любую бомже работу

 

 

 

5-6 лет назад просил у родителей "поддержки" хтяб 1к баксов на переезд(хоть кудато) и ремонт зубов, хуй там (на отлично учился в универе) (я еще работал паралельно учебе)

похуй давно на них, дебильных родственников тудаже, три года не общался ни с кем из них

 

сегодня у них опять идеи бизнеса блять (с 00-х тратят на все эти орифлеймы, МММ пирамиды, страховки, и други обманы с телика/реклам десятки тыщ бакосв в год, буквально(деньги у них есть))

сами как бомжи живут никуда не ездят, имбы 10% от выкинутых денег в год хватилоб им на любой отдых в любой стране блять

 

пиздец как это дизморалит

съебать бы хоть кудато

до чего этот классный регион доводит, пиздец нидайбох тут остаться

 

 

Это че, сценарий на очередной дебильный сериал на тнт?


 

Жиза для любопытных

Чекнул = пидор

 

Поделиться сообщением


Ссылка на сообщение

на хабре тут на неделе чел 13 летний писал, что он программист

 

хира походу

Поделиться сообщением


Ссылка на сообщение

Пацаны, есть у кого нибудь ссылка на хорошо написанный асинхронный tcp ip клиент сервер на .net framework c#?

Поделиться сообщением


Ссылка на сообщение

Пацаны, есть у кого нибудь ссылка на хорошо написанный асинхронный tcp ip клиент сервер на .net framework c#?

что такое "асинхронный tcp ip клиент сервер"


 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

обоснуй

у меня есть 2 контраргумента -

- я пихаю создание объектов на каждый чих каждой функции и у меня ничего не тормозит и гц работает нормально (речь про бекенд)

- современные оптимизации в jvm могут отработать так что форич скаляризуется до интов на стеке

есть какая-то статья или что-то еще в подтверждение твоих слов?

Довольно сложно сравнивать бекенд и мобильную разработку. Опыта адекватной разработки на бекенд не имею. Но с мобилами как и с любыми девайсами с ограниченными ресурсами всё несколько иначе, современных оптимизаций там нет практически, потому что до сих пор разрабатывают под старые андроиды. В мобильной разработке (а чувак приводил код для андроида), вызов гц может просадку фпс делать, создавать объекты в методе отрисовки -> заставлять гц работать чаще -> делать искуственные просадки фпс.

Поделиться сообщением


Ссылка на сообщение

Ну я обычный ждун, но стремящийся к свету
И я не напутал, я просто указал на то, что пренебрегать кешированием нельзя, нельзя просто взять и нахуярить на все переменные volatile, это будет просто медленнее работать.

Поделиться сообщением


Ссылка на сообщение

Пацаны, есть у кого нибудь ссылка на хорошо написанный асинхронный tcp ip клиент сервер на .net framework c#?

https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.tcpclient?view=netframework-4.7.2

https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.tcplistener?view=netframework-4.7.2

:palevojein:


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

 

 

Ты напутал аппаратный и програмный кэши. В C++ volatile вообще изначально оперделено как "храни меня в кеше проца семпай" 

 

 

в с++ volatile определен исключительно как "не оптимизируй меня, если видишь, что я якобы не используюсь, або лясне"

никаких кэшей и прочего там не фигурирует, реализация зависит от желания компилятора, но фактически я так понимаю все просто просто перестают юзать регистры для этих переменных, а не каким-то магическим образом блокируют использование кэша процессора. Они и не могут этого делать

 

это уже в джавах и шарпах там расставляются барьеры гарантирующие что чтения и записи будут происходить в порядке, определенном в коде, плюсам насрать вообще


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Ты напутал аппаратный и програмный кэши. В C++ volatile вообще изначально оперделено как "храни меня в кеше проца семпай"

volatile object - an object whose type is volatile-qualified, or a subobject of a volatile object, or a mutable subobject of a const-volatile object. Every access (read or write operation, member function call, etc.) made through a glvalue expression of volatile-qualified type is treated as a visible side-effect for the purposes of optimization (that is, within a single thread of execution, volatile accesses cannot be optimized out or reordered with another visible side effect that is sequenced-before or sequenced-after the volatile access. This makes volatile objects suitable for communication with a signal handler, but not with another thread of execution, see std::memory_order). Any attempt to refer to a volatile object through a non-volatile glvalue (e.g. through a reference or pointer to non-volatile type) results in undefined behavior.

 

какой ещё нахуй кеш процессора? ты не перепутал с register который типа в регистре должен хранить?

волатайл в с++ делает каждый доступ к переменной с таким квалифитакором неоптимизируемым + сохраняя порядок действий в пределах одного потока

и в принципе на этом всё

Поделиться сообщением


Ссылка на сообщение

 

как же студенты душат ааааааа

https://vgy.me/2Pgp6x.png

 

JuJeu понравилось это

Поделиться сообщением


Ссылка на сообщение

 

 

какой ещё нахуй кеш процессора? ты не перепутал с register который типа в регистре должен хранить?

А да точно  :trollpalm:  

 

Ну ладно

Поделиться сообщением


Ссылка на сообщение

 


Правильный многопоточный синглтон с двойной синхронизацией проверкой.


разве в дабл чеке не нужно синхронайзед вешать на создание? 

:buba:

ни мало ни много, а много и мало

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...