>> Когда это линух падал от ошибки в модуле? Спокойно выгрузит лишний глючный модуль и продолжит работу
вызывающе неверная информация, модуль обладает всеми правами ядра (и вообще это код ядра, просто загружается по-другому), и посылает систему в crash одной левой пяткой
накладные расходы на UNIX пайпы связаны с переключением контекста, потому как это системные вызовы
примерчик дизассемблировал, все нормально там с многопоточностью, по структуре реализация enum это развитие второго варианта, со всеми наворотами enum'ов, которые, цитируя Блоха, добавляют лаконичность синтаксического сахара, сериализацию "из коробки", и серьезную безопасность, в т.ч. от разных изощренных атак.
угу, там есть ссылки на google, который по запросу "popcorn cell phone" выдает статью, где говорится, что этих фейков запостили 4 штуки, все с французских аккаунтов.
кстати, интересная мысль в статье - во время звонка (до поднятия трубки) телефон скорее всего не излучает, а в основном принимает сигнал
не совсем так, пользователь не обязан знать, что singleton реализован как enum, он просто пользуется им как обычным классом-синглтоном вызывая getInstance(), который может даже интерфейс возвращать.
Честно говоря, я не могу доказать, что в данном случае гарантирована безопасность в многопоточной среде, но я на 95% уверен, что авторы спецификации Java5 это предусмотрели. Надо будет порыться в спецификации или дизассемблировать какой-нибудь пример.
минусующему предлагаю почитать мнение Блоха, который, как ни странно, тоже считает, что a single-element enum type is the best way to implement a singleton.
именно этот пример никуда не годится, для конкатенации логичнее и эффективнее использовать цикл, а для читабельности ничего лучше concatFooDescriptions() придумать нельзя, а так и питоновская и хаскелевская строчка кода нуждаются в комментарии.
Да цикл приведен, но горе-читатель не заметил что он почему-то назван нудным? Нудность эта фиктивная, пользы от функциональщины в этом примере - почти нуль.
полностью согласен, зачем пихать функциональный стиль во все дырки?!! в примере 2 достаточно было написать тривиальный цикл и выделить его в метод (с понятным названием), это было бы более читабельно, чем приведенный питоновский и хаскелевский код.
Смотря какого языка, если языка Эллочки-Людоедки, или подзаборной фени, то вполне уместен. Вопрос в том, имеют ли право называть безграмотность (пусть массовую, но не общепринятую) русским языком.
вызывающе неверная информация, модуль обладает всеми правами ядра (и вообще это код ядра, просто загружается по-другому), и посылает систему в crash одной левой пяткой
накладные расходы на UNIX пайпы связаны с переключением контекста, потому как это системные вызовы
кстати, интересная мысль в статье - во время звонка (до поднятия трубки) телефон скорее всего не излучает, а в основном принимает сигнал
INSTANCE;
public static Singleton getInstance() { return INSTANCE; }
}
кстати и читается цикл, по моему скромному мнению, как ни странно легче, просто в силу того, что этот микропаттерн сидит глубоко в подкорке
P.S. вместо того чтобы минусовать лучше бы кармы добавили, а то комментировать лень ;-)
Да цикл приведен, но горе-читатель не заметил что он почему-то назван нудным? Нудность эта фиктивная, пользы от функциональщины в этом примере - почти нуль.