Pull to refresh

Comments 439

Видимо это очень смешно, жаль я не понимаю о чём это... =(
это С#. и настоящий WTF. lock ("Place Order") - бессмыслица жуткая
запрещает доступ к ресурсу, указанному в аргументе, другим потокам, пока текущий поток не выполнит операции в части кода, ограниченной lock'ом
краткость сестра таланта (с)
UFO landed and left these words here
Человеческие языки программрования. Человеческие.
программирования языки. ПрограммИрования.
опечатался я, не надо делать из меня идиота, не первый год программирую.
Я тоже не очень... так сказать... не очень люблю .Net. А какой язык хорош?

А то я для web в основном...
На программирования языке. ПрограммИрования. =)
Просто человечный язык программирования немного смешно звучит.
очень даже практично звучит. сколько на свете историй, когда девушек спаивают и программируют на секс :))
это что-то вроде synchronized section в Яве?
с явой не знаком, по названию - оно, наверное. В общем случае (для win32) это красивая обертка для Crytical Section
чепуха! вовсе он не запрещает доступ к ресурсу, указанному в аргументе. аргумент - всего лишь объект синхронизации. И что вообще значит "запретить доступ к ресурсу"?
аргумент - любой объект. Да, у него где-то внутри есть примитив/объект синхронизации, критическая секция например.
Запретить доступ к ресурсу - хм, ну другой поток, который попытается выполнить код, ограниченный lock'ом, вынужден будет ждать.
Но вы то написали "запрещает доступ к ресурсу, указанному в аргументе, другим потокам..." - хотя может я просто не понял фразы :)
В любом случае объект синхронизации остается очень даже доступным. Критической секции не создается для отдельного объекта - это сочли неоптимальным - вместо этого в поле SyncBlockIndex у каждого объекта хранится индекс критической секции из кэша(если он не участвует в синхронизации то SyncBlockIndex==-1).
http://msdn.microsoft.com/en-us/magazine…
lock ("string") MSDN <a href="http://msdn.microsoft.com/en-us/library/c5kehkcz.aspx"упоминает</a>, как common practice, естественно, осуждая при этом.
Давно не имел дела с .NET, но насколько я понимаю, строка интернируется и полной бессмыслицей назвать код нельзя.
мне почему-то кажется, что переменную не ссылочного типа использовать не получится, даже если она становится статической переменной. может я не прав. в любом случае это очень неочевидный, а следовательно не очень хороший код для поддержки, даже если он таки работает правильно. но мысль интересная, надо будет проверить как такой код себя ведет
да, действительно. и этот пример конкретно описан в описании lock. значит никакой это не WTF, а нормальный код. я поторопился)
Как-то работающий — это ещё не значит нормальный.
не как-то, а очевидным, описанным в документации образом.
И всё таки! Кто нить обьясните в чём соль!

З.Ы: А ты понимаешь в чём соль %username%?
UFO landed and left these words here
Из %username% получается три пачки соли.
И несколько килограмм отличного мыла!
«Кролики — это не только ценный мех, но и три-четыре килограмма диетического легкоусваиваемого сала.»
UFO landed and left these words here
«Ответ на главный вопрос жизни, вселенной и всего такого» (с)?
хабр официально сменил ответ на этот вопрос.
UFO landed and left these words here
1. Рейтинг статьи от 10 до 15 (по модулю).
2. Карма автора от 7 до 10 (по модулю).
3. Перемещение в «Юмор на Хабрахабре» или в новый коллективный блог «КодоБредоБред» (в случае, если сознательные хабраграждане спасут карму автора).
Хоть переместить уговорите, а то ведь совсем прогорели :)
UFO landed and left these words here
да вроде и так все написано, lock ("Place Order") { // some code } что непонятного ?
Шедеврально! Плюсанул статью, пока ее не заминусовали :)
Это надо вообще на главную, такое не каждый день увидишь
Много нового узнал :)
Полностью с солидарен с Вашей точкой зрения. Подача материала великолепна. Что-либо близкое по уровню я не встречал, наверное, со времени чтения McConnell'а.
Коллега, ведь мы наблюдаем с вами по истине революционный момент в истории технической литературы.
Lock ещё долго будут приводить в пример другим писателям и заслуженно считать классикой жанра.
Подозреваю, благодаря краткости и запоминаемости сего шедевра он станет локальным мемом. (:
Согласен. Да пребудет с тобою Лок ))
Да-да! Хоть стиль немного "официальный", суховатый, но, как вы выразились, подача его великолепна! Ну и к концовке чуть придерусь, как-то она замята.
А я улавливаю нотки инжира и присутствие корочки абхазского граната.
вы смеетесь, а я весь плюсомет расстрелял, включая карму. Через GPRS. Убейте меня :)
вам смешно, а я весь свой плюсомет расстрелял. Через gprs. Убейте меня :)
А почему сейчас уже не включая карму и gprs маленькие?
Чтобы траффик сэкономить =)
"Стоп, но ведь упоминание о карме и большие буквы в каментах не доводят на хабре до добра", — неожиданно подумал %username%
Экранная клавиатура - зло, подобного которому мало на свете ;)
Денискин, что творится с Хабром??? А? :)
UFO landed and left these words here
это как же нужно было ошибиться =)
Возможно, он хотел ломануть Хабр, но, что-то пошло не так… :)
Наверное, не ломануть, а судя по коду - закрыть его нах.
Нет, все верно. Автор совершенно прав.
Это эксперимент разработчиков по реализации глобальной IDE на основе хабра.
UFO landed and left these words here
ага, "даёшь каждому комментарию по плюсу!"
UFO landed and left these words here
UFO landed and left these words here
Мне приходится с вами согласиться.
Изумительно!
Такая грация...
Чувства переполняют просто...
UFO landed and left these words here
Хоть и пост добра, но этого минусуем. Прощай парень.
UFO landed and left these words here
UFO landed and left these words here

НЛО прилетело и опубликовало эту надпись здесь :(
UFO landed and left these words here
Профессиональный тролль?
Главное на главную не выйти. Тогда тролляки всё испортят
Уже поздно, но посмотрим. Надеюсь, совокупная карма разумных существ все же больше и автора удастся спасти.
Рад что всем понравилось.
Надеюсь с кодом автора больше работать не придется.
Вы молодец. Хабрасообщество ценит людей с чувством юмора! От имени и вообще я желаю Вам успехов.
UFO landed and left these words here
Хотел выяснить откуда «растут ноги» у этого куска кода.
К моему удивлению, этот пост Google уже проиндексировал и выдал первой строчкой :)
Google тоже проникся добром к Хабру.
Честное слово, код оригинальный, был найден в коде коллеги при рефакторинге
Надеюсь, он узнает свой код в ленте новостей и обязательно отпишется
Расскажите, как вам таки удалось достич таких успехов ??
UFO landed and left these words here
Странный код. Объясните, плз, в чем соль?
Прочел — не помогло.
Это C#? Тогда ошибка синтаксиса. И не так чтобы смешная.
Мир тебе, неизвестный брат, и счастья твоему светлому дому!
Это же «Пост добра»!
Коллективной Силой Добра исправляются все баги в коде, независимо от языка написания!
Опять-таки эсперимент создателей хабра.
При некоторых обстоятельствах это даже корректно, не считая того что не скомпилится %)
Возникает когнитивный диссонанс при взгляде на этот комментарий :)
заминусовали... ещё и в карму насрали :(
Отсыпал кармы, света и радости тебе! =)
спасибо вам добрый человек :)
Будь щастлив и используй lock только воимя добра
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
как раз то что надо новичкам - второй день на хабре и под раздачу попасть - птица счастья?
Да, да, в хабранародье — «Пост Добра» :)
«Terrible thing, envy.» © Peugeot Ad.
Повысил Вам карму.
во истину хабр не без добрых людей. и добрых топиков.
Воистину!
lock ("Place Order") { // some code } © Примечание Forb'а
Обычно после такого сабантуя наступает жестокий отходняк. Ну-ка, раз...
Потрясающе! Столько смысла в одной строчке я никогда ещё не видел! Автор великолепен! Браво!
UFO landed and left these words here
UFO landed and left these words here
Нда, у меня плюсомет уже кончился…
Впервые за пол года.:)
UFO landed and left these words here
И вам плюсик… Воскресение, вечер, хуле…
UFO landed and left these words here
Огоо, с такой кармой видимо и правда пришлось постараться!)
Подымем есче)
Поздравляю всех с победой здравого смысла !!! =)
UFO landed and left these words here
UFO landed and left these words here
Спасибо за участие в эксперименте "как, имея 7 постов, получить 15 очков кармы".
гг)
У меня один пост поднял до 15-ти) А потом НЕлюбители футбола заминусовали.
Особенно эротично, что когда пишешь длинную умную статью, тратя массу времени, усилий и душевной красоты, её не заметят в лучше случае. А вот за такую вот упячку забросают чепчиками.
UFO landed and left these words here
Нет тут логики! Нету Нету!
У людей хорошее настроение, что-то витает в воздухе, хочется дарить миру любовь и плюсы, соединяясь в танце весенних цветов, излучая флюиды позитива.
это эксперимент создателей хабра
а в чём юмор, объясните, пожалуйста? я кодить не умею, поэтому и спрашиваю..
По старой доброй традиции, когда что-то непонятно, это «что-то» переводят с помощью Промта. В данном случае перевод гласит:
     замок ("Размещают Заказ") {//некоторый кодекс}
Чорд, я вывалил 116 плюсов за сегодня…
а теперь налетели тролли.
Дух позитивного ойтишнега с нами! =)
а гдейта вы взяли стока? ))
Да так, пару раз попадал в подобные топики =)
какая добрая традиция оказывается, а я впервые такое вижу))
Явление крайне редкое и спонтанное:)))
этот комментарий не плюсуйте, пожалуйста
А? Если что я не минусовал, не могу :)
даже кармапопрошайкам, вроде вас, поднимаем карму в День Добра
Покажите мне где еще кроме этого топик я просил поднять себе карму.
я не знаю почему, но мне этот топик начинает нравиться все больше и больше =)
Зеленый цвет приятен глазам?
наверное потому что на Хабре день добра.
Конечно. У меня плюсы быстро пополняются:)
спасибо:) хорошего вам настроения:)
Пожалуйста:)

Все в тиворз!!! =)
признайтесь - muse ваш виртуал! %)
Признаюсь.
Нет =)
У меня просто настроение после этого топика очень хорошее. Или это из-за того, что я три дня е*ался с програмой на асме под восьмибитный микроконтроллер, и сегодня она наконецто заработала. Не знаю:)
Короче, держите плюс в карму =)
Стопудово, во всяком случае, я закончу дела, и собираюсь гонять его целый вечер) Встречаемся на хабрасерваке:)
ого. бесплатная раздача плюсов :)
может потому что седня 06.07.08? :)


гы, я слегка поломал хабр =/
чорт, я совсем забыл.
а ведь я хотел отметить 03:04:05 06.07.08 или 06.07.08 09:10:11
чорт, я совсем забыл.
а ведь хотел отметить 03:04:05 06.07.08 или 06.07.08 09:10:11
А Лебедев у нас уже президент?

За что-то понизили и так маленькую карму, эх, плакала моя вставка картининок =(
хабр уже не тот, %username%
UFO landed and left these words here
lock - новое открытие хабрахабр)
Даже в тэге lock всего одна тема(
Какая-то массовая истерия чтоли...

---
The lock keyword ensures that one thread does not enter a critical section of code while another thread is in the critical section. If another thread tries to enter a locked code, it will wait, block, until the object is released.

The section Threading (C# Programming Guide) discusses threading.

The lock keyword calls Enter at the start of the block and Exit at the end of the block.

In general, avoid locking on a public type, or instances beyond your code's control. The common constructs lock (this), lock (typeof (MyType)), and lock ("myLock") violate this guideline:

* lock (this) is a problem if the instance can be accessed publicly.
* lock (typeof (MyType)) is a problem if MyType is publicly accessible.
* lock(“myLock”) is a problem because any other code in the process using the same string, will share the same lock.

Best practice is to define a private object to lock on, or a private static object variable to protect data common to all instances.
Топикстартера минусуют!
Ану поправить ситуацию! Плюсометы на взвод! =)
подняли настроение на весть вечер!
(возможно, и всю следующуне неделю)
код не выполниться xD
верно так:

lock ("Place Order") { /* some code */ }
ничего не понял, но топик добрый, приятно читать комментарии ^_^
Я ничего не понимаю в C#, но мне всё равно очень, очень весело.
на этом дискуссия подошла к своему логическому концу
нифига не подошла, я требую продолжения банкета!
Обожаю, когда на хабре появляется пост добра :)
Добро победит! Прошу только без холиворов :)
Народ, опомнитесь! В полночь все плюсики превратятся в тыквы!
Аа, пофиг! Устроим тестовый Халовин :))
Код выполнится, более того, критическая секция не будет прервана из другого потока этого же процесса, если в нём не будет такого же lock("Place Order"). Не слишком красиво и безопасно, но для топика - не повод.
Мне кажется, ничего ведь страшного не будет, если я про коллайдер тут напишу?
Это код из программы управления коллайдером! Мы все умрём :)
Это код из программы Максимум. Скандалы интриги расследования!
Это код и программы передач на завтра.
= Объяснение =

МСДН: lock(“myLock”) is a problem because any other code in the process using the same string, will share the same lock.

А это значит, что в момент выполнения этого куска кода если где-нибудь будет выводиться в другом месте строка "Place Order", что вполне возможно, если это какой-нить сервер, или просто передаваться куда-нибудь, то будет жоппа.

Чтобы жоппы не было надо использовать строку типа "аfsakl;jfkldsjfklsdjfklsdjlfjsdlkfjsdlkjfjsdklf jsdlkfj дылвао дылвоа длыфво ажлдыфво адлжоывлдафо дылжво адлжыфво аджлыво аdfsj kлждоп jsg js0934u08 u34208 кощшоавдлжьявмю.бьц34ш к0983лждоыв"
Только в пределах процесса.
А где про это вааще нормально написано - про процессы, треды и прочее?
kлджоп? :) Не думал что насрать в комментах можно так органично, на 3 строки!
Ситуацию с неправильным комметарием я увидел сразу, а теперь и вообще радуюсь вместе со всеми :) Ну не сталкивался я с C#
Читал сегодня вашу статью!
Многое не понял, но все равно, классно!
зло лишь жалкая тень добра. причем солнце в зените
UFO landed and left these words here
Это была первый урок по изучению C#. Что же будет на следующем?.. :)
Даешь больше зеленых плюсов чем у первого коммента! (:
Ну чего далеко ходить - С# в опасносте?:)
Даешь мировой рекорд по количеству одновременно улыбающихся хабралюдей :)
Фуф, я свои 25 раздал, обойма опустела (:
Вот стесняюсь спросить...
А может в честь такого прилива добра на хабр, мне кто-нибудь карму повысит? :)
Давно хочу несколько интересных статей выложить, а кармы по нулям.
держи =) Только пользуй с умом =)
Причем самое интерестное, что если вы написали этот коммент в любом другом топике его и вашу карму заминусовали. По хабру можно психологию толпы изучать!
Выкладывайте-выкладывайте. Хорошего контента много не бывает.

P.S. Только такого безумия лучше не устраивать, ибо нечасто одновременно у подобного количества людей просыпаются неслыханная щедрость и приток положительного настроения.
Всем спасибо! Очень помогли.
может и мне, под шумок?
только т-с-с-с! :)
Мну тоже надо =) До единички, а то комменты раз в 5 минут =\
Я вылез из тиворлдс, и плюсую всех троих =)
Я хабранеудачник :-(
Всем в этом топике карму поднимают, а мне — увы, слили :-(
исправим, не боись! Добра на хабре больше.
Спасибо! Даже лучше стало. :-)
Какой позитивный зеленый топик получился (=

Самое интересное что после десятка коментов все забыли про lock (=
UFO landed and left these words here
UFO landed and left these words here
судя по происходящему, в ближайшее время эта фраза станет завуалированной и предельно вежливой просьбой чуть-чуть поднять карму ))
первый раз вижу столько плюсов в коментариях...
Ага, я свои 44 патрона потратил, в первый раз просто по-порядку шел и плюсовал, плюсовал. Да пребудет с нами великий Лок, плейсящий ордер! :D
Если это топик добра, пожелайте, хабралюди, мне удачи. Если завтра пересдам матан, перейду на 3 курс. :)
Удачи! Желаю отдохнуть до конца лета без хвостов, чтобы с 1 сентября бодрой походкой пойти на 3 курс :)
В таком случае Вам лучше готовиться, чем читать и писать комментарии.
Офигеть!
Ну спасибо, народ! Ну настроение подняли!
Прям как из жаркой пустыни да под холодный душ: впервые увидел «Пост Добра» )))

Предлагаю отмечать в календаре «Дни Добра».
06.07.08 замечательно для этого подходит.

До встречи 08.08.08! ;-p
Продолжил позитив и раздал все свои плюсы в этом топике :)))
Хабр не выдерживает такого груза добра:
"504 Gateway Time-out
nginx/0.6.31"
Хабрахабр познал силу Хабраэффекта! О, всемогущий lock!
In Lock we trust.
Let Some Code be with you!

PS: Where can I Place Order?
— In A.D. 2101, order was placing.
— What happen?
— Somebody lock us some code.
черт, я поставил минус топику, потом прочитал комменты и теперь мне стыдно :)
За всю историю коментариев нету ни одного с отрицательным рейтингом :) Впервые.
есть, но они быстро подправляются плюсами )))
В середине страницы есть парочка.. Ещё несколько НЛО потырило :)
это не первый пост добра, %username%
Я знаю, но этот вроде начинался по другому. Там вроде какая-то шутка была, даже по-моему про программирование. :-/
посты добра появляются каждые один-два месяца. с шуток, в новостей или чего угодно. вот был как-то потс про убунту-аватарки, приуроченный к выходу новой версии. и еще куча других, стихийных постов, нарушивших покой хабра :)
груз добра грузом, но во что в итоге затранслируется этот код будет зависеть от компилятора. с MS-овским оно вроде даже и работать будет как задумано, а вот с Mono не факт :")
З.Ы.: я так не писал и писать никогда не буду :D
+++++        +        +    ++        +++    +        +      +++++    +    +    +++++
+       +      +  +      +  +    +    +          +++    +          +          +  +        +
+       +    +      +    +++    +    +          +    +  +          +            +          +
+       +    +      +    +    ++        +++    +++    +          +        ++            +
Это чо, походу не я один сегодня на грудь принял?
Какой хороший пост!

Всем, читающим мой комментарий, я искренне и от всей души желаю счастья и удачи во всех начинаниях. Окружающий нас мир очень хорош, на самом деле. Прекрасно, что выпала возможность поделиться этим знанием со всеми.
UFO landed and left these words here
UFO landed and left these words here
о господи =) зарядите-ка мне из этого зверя плз =)
плюсанул всем у кого были нули, кроме Setti. понаблюдал гармонию положительных зелёных чисел, вымыл руки, пошёл спать.
хотел посчитать плюсы, но сбился на 223ем, это было где-то 20%, кто-нибудь посчитает до конца?
з.ы. мой первый пост..)
UFO landed and left these words here
Как просто людям сделать приятно :)
Я раздал свою обойму и теперь у мне везде плюсы мерещатся. Даже мемы все как-то перевернулись

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

ОМГ... меня клинит =)
ужас. поддался влиянию и тоже распулял обойму :")
в плюс мне ноги! :D
У меня за всё это время прямая на кармаграфе
Интересный хабраэффект, интересно, кто этот Робин Гуд... Забирает плюсы у богатых и отдает их бедным? ;)
Прочитав этот коммент, зажмите PageUp и наслаждайтесь вливающейся в вас Силой Плюсов Поста Добра :)
Ненавижу копирайты в цитатах, но всё же держи плюс, пока не заминусовали.
UFO landed and left these words here
мда уж) как я понял, в том lock'е было скрытое указание для хабралюдей начинать дарить карму)
Нет!!! Закрывающаяся фигурная скобка должна быть закомментирована! :)
я в сорце страницы подсмотрел =)
Она определенно стоит того, чтобы подарить ее автору
boost::mutex::scoped_lock lock(m_ObserveMutex) { //some comment }
Спасибо, но я в смысле ++ :)
UFO landed and left these words here
Предлагаю назначить 6-е июля праздником lock'a. В этот день все lock'еры собираются
вместе, поют, пляшут и прыгают через костёр. Тому кто сумеет перепрыгнуть - ставят плюс.
А кто не сумел - забирает НЛО?
UFO landed and left these words here
В понедельник динамика продолжается? Вот это сила ЛОКА!

Да прибудет с вами Эта сила!
Это мне напоминает фильм Lost (Остаться в живых) ))
Скорее - Саус Парк.

— Они опять убили Кенни!
Утверждение. Какая-то у Вас шкала странная.
Доказательство. От -22 до 44 полет нормальный с шагом измерения, равным двум. После этого сразу два раза появляется 45, затем шкала от 46 до 62 идет с шагом, равным единице. Опять же, не совсем понятно, что творится после 62, но если принять предположение, что шаг измерения сохраняется далее, то 64 = ∞.
:)
И шрифт у него какой-то другой… Вообще чувак шкалы подделывать не умеет! Пойду ему в карму насру.
:)
UFO landed and left these words here
Прочитал ВСЕ комменты. Так и заплюсовал бы все. )))
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
Ура! Пост добра :)

Кстати, недавно вот тоже столкнулись с таким кодом. Недоуменно изучали мсдн, гуглили, в конце-концов решили, что это был прикол и дружно переписали блокировки.
Пост добра это гуд, только жалко они не очень часто. :)
Если бы были часто, они бы утратили свою особую магию.
Осталось пара голосов за карму ( но я думаю, Вы не против ^^
UFO landed and left these words here
UFO landed and left these words here
Делаем прогнозы, када будет следующий пост добра...
Знак бесконечности. Карма выдержит? :)
Ну с бесконечностями Хабр уже знаком.
Но вот ТРИ бесконечности - это да, такой груз добра нелёгок ))
Есть еще хабросилище в lock-ах! И плюсы в плюсометах!
Да, доктор, плюсую ежедневно! Не могу остановится!
UFO landed and left these words here
От такого количества плюсов кажется, что весь мир переворачивается. :)
UFO landed and left these words here

Articles