|
|
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
cdtyjv, Ну тогда не удивляйся что тебя не воспринимают как эксперта и тролят всем форумом Сейчас в этом диалоге со мной ты явно демонстрируешь свою проф незрелость ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:04 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01, вот расскажите пожалуйста, были ли вам полезны знания тонкостей JMM (не общие принципы многопоточной работы, типа synchronized, wait, notify, ReentrantLock), а именно тонкости, типа Happens Before в разных явно не синхронизированных операциях? Как мне кажется, это все реально нужно только в очень узкоспециализированных задачах, или чтобы разбираться в говнокоде (или писать говнокод). А исходный пример, в реальности модифицируется вот так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. И никаких вопросов больше не возникает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:10 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01Ну тогда не удивляйся что тебя не воспринимают как эксперта и тролят всем форумом Сейчас в этом диалоге со мной ты явно демонстрируешь свою проф незрелостьКоллега, я не имею и никогда не имел своей целью демонстрировать свою проф пригодность на этом форуме. Я демонстрирую ее только в одном месте - на работе. Здесь же я либо помогаю новичкам, либо улучшаю свое настроение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:11 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
HoBTID, Да мне это было нужно когда я пытался разогнать приложение - чтоб оно пропускало 300.000 запросов в секунду Каждый syncrhonized блок на счету Каждый CAS чего то стоит Нет там где клипают джиспишки это конечно неособо важно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:12 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
cdtyjv, Окей Окей )))) Ни в коему случае не хочу Вас в чем то переубеждать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:13 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
HoBTIDbuldozer01, вот расскажите пожалуйста, были ли вам полезны знания тонкостей JMM (не общие принципы многопоточной работы, типа synchronized, wait, notify, ReentrantLock), а именно тонкости, типа Happens Before в разных явно не синхронизированных операциях? Как мне кажется, это все реально нужно только в очень узкоспециализированных задачах, или чтобы разбираться в говнокоде (или писать говнокод).Так и есть, только в узкоспециализированных задачах. Но дело в том, что такие задачи в России есть как минимум в Москве и Питере, за их решение очень недурно платят, и устроиться в соответствующую контору абсолютно реально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:13 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01, А кто такие эти джедаи? По остальным группам вопрос нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:13 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01HoBTID, Да мне это было нужно когда я пытался разогнать приложение - чтоб оно пропускало 300.000 запросов в секунду Каждый syncrhonized блок на счету Каждый CAS чего то стоитЕсли приведенный вами код не из головы, а из какой-то реальной задачи, то я не понимаю, почему вы не применили final или volatile. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:15 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
HoBTIDА исходный пример, в реальности модифицируется вот так: Мы бы с вами после такой модификации кода не сработались Если бы Вы были лид и упорно бы перли что синхронайздед блок нужно оставить - вы бы перестали быть для меня авторитетом как профи и я бы уволился чуть позже. Если бы я был лид - вы либо переучивались бы либо я бы вас уволил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:15 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01Нет там где клипают джиспишки это конечно неособо важно Чёрт, у нас не JSP, поновее шаблонизатор выбрали :-))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:16 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
cdtyjvbuldozer01HoBTID, Да мне это было нужно когда я пытался разогнать приложение - чтоб оно пропускало 300.000 запросов в секунду Каждый syncrhonized блок на счету Каждый CAS чего то стоитЕсли приведенный вами код не из головы, а из какой-то реальной задачи, то я не понимаю, почему вы не применили final или volatile. Нет код в задачке не из реальной жизни Задачка взята с concurrency-interests - где действительно академически грамотные разработчики на языке HB, SO , PO дают доказательство правильного ответа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:17 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01Нет там где клипают джиспишки это конечно неособо важно Это какой-то новый тип ЧСВ? Highload ЧСВ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:18 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
Blazkowiczbuldozer01Нет там где клипают джиспишки это конечно неособо важно Это какой-то новый тип ЧСВ? Highload ЧСВ! Да какое к черту ЧСВ)))) Так вот решил пообщаться с коллегами а вместо этого меня пытаются убедить что говнкодинг это круто и мощно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:19 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
schwabuldozer01, А кто такие эти джедаи? По остальным группам вопрос нет. Да щас они везде требуются))) уяк уяк и в продакшен видимо ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:22 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01Нет код в задачке не из реальной жизни Задачка взята с concurrency-interests - где действительно академически грамотные разработчики на языке HB, SO , PO дают доказательство правильного ответаА понятно. Вы их портреты уже заказали себе домой на стену? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:44 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
BlazkowiczЭто какой-то новый тип ЧСВ? Highload ЧСВ! Причем у обоих, и они встретились, при этом, у них самое большое количество постов в разделе Работа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:46 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
0FDBlazkowiczЭто какой-то новый тип ЧСВ? Highload ЧСВ! Причем у обоих, и они встретились, при этом, у них самое большое количество постов в разделе Работа. Ну к сожалению в форуме Java как мы видим не нашлось людей которые бы академически грамотно обосновали свой ответ Вот и юзаем сруль по назначению ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:48 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
cdtyjvbuldozer01Нет код в задачке не из реальной жизни Задачка взята с concurrency-interests - где действительно академически грамотные разработчики на языке HB, SO , PO дают доказательство правильного ответаА понятно. Вы их портреты уже заказали себе домой на стену? Нет я спокойно прочел и внял то что пишут умные люди Надеялся таких же встретить здесь ))) Но видать не судьба. Здесь в основном Джедаи и Тролли походу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 12:49 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
buldozer01Нет я спокойно прочел и внял то что пишут умные люди Надеялся таких же встретить здесь ))) Но видать не судьба. Здесь в основном Джедаи и Тролли походу)Понятно, юношеский максимализм. Прочитали про формальные основы JMM, и теперь считаете, что все, кто их не применяет их от и до в реальной жизни - УГ. А тем временем Даг Ли работает над новой спецификацией JMM, потому что в текущем виде со всеми этими PO и SO ... она действительно практически неприменима за рамками узкого коммьюнити, которое саму же JMM и разрабатывает. Когда набьете себе руку в конкаренси, когда все это у вас хорошо уляжется в голове, вы поймете, что в реальной жизни, какие бы сложные прикладные вещи вы не писали, это все нахрен никому не нужно. Все, что я использую из этой теории в практике - HB и freeze файнал полей. Остальное - заумствования которые могут быть нужны только на этапе обучения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 13:05 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
cdtyjvКогда набьете себе руку в конкаренси... До уровня Джедаев видимо никогда не набью ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 13:08 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
А задачка то и правда интересная. Там вопрос в том, можно ли сделать в качестве Synchronization Order сначала getA() а потом уже конструктор. PO этому помешать вроде как не может (он независимо от SO работает). HB - тоже. Остается только causality requirement. Вот не вижу я, где он может помешать закоммитить synchronization() в конструкторе после всего остального кода из примера. Так что и 0 можно увидеть при особом желании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 22:12 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
А, блин, я что-то торможу. Нет там 0. Если SO у нас getA() -> ctor, то чтение из global не может увидеть запись туда значения в потоке 1. А если ctor -> getA(), то чтение не может увидеть 0. Поэтому ответ будет {null, 42}. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 22:19 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
Первый сильный пост на 2 страницы говнофлуда ))) Спасибо Вам уважаемый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 22:41 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
maxkarА, блин, я что-то торможу. Нет там 0. Если SO у нас getA() -> ctor, то чтение из global не может увидеть запись туда значения в потоке 1. А если ctor -> getA(), то чтение не может увидеть 0. Поэтому ответ будет {null, 42}. Да, там 0 не будет, но только не потому, что 2й поток не увидит 0, а потому, что у него просто не будет ссылки на объект в промежуток времени когда там еще будет 0. Я тож проглядел) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2014, 23:04 |
|
||
|
Задачка на ночь
|
|||
|---|---|---|---|
|
#18+
no56892maxkarА, блин, я что-то торможу. Нет там 0. Если SO у нас getA() -> ctor, то чтение из global не может увидеть запись туда значения в потоке 1. А если ctor -> getA(), то чтение не может увидеть 0. Поэтому ответ будет {null, 42}. Да, там 0 не будет, но только не потому, что 2й поток не увидит 0, а потому, что у него просто не будет ссылки на объект в промежуток времени когда там еще будет 0. Я тож проглядел) Так вроде бы если ссылка на объект "утекла" в конструкторе, то не гарантируется что другой поток увидит уже установленное значение 42? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2014, 08:13 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38764600&tid=2126515]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
168ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
70ms |
get tp. blocked users: |
2ms |
| others: | 249ms |
| total: | 523ms |

| 0 / 0 |
