metaclass: (Default)
[personal profile] metaclass
https://github.com/SparkViewEngine/spark/blob/master/src/Samples/DirectUsage/ConsoleTemplating/Services/MessageBuilder.cs

А вот насколько подобный код (статик _instance и его инициализация) является кошерным? Ну с interlocked все более-менее понятно, а вот собственно использование синглетонов вместо всяких модных IoC и тому подобного усложняющего все трэша?

Date: 2014-05-19 07:27 pm (UTC)
From: [identity profile] mr-st.livejournal.com
Интерлокед там нафиг не нужен, кстати.

Date: 2014-05-19 07:37 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Присваивание и проверка для ссылок атомарны?

Date: 2014-05-19 07:38 pm (UTC)
From: [identity profile] mr-st.livejournal.com
Присваивание статику да.

Date: 2014-05-19 07:50 pm (UTC)
From: [identity profile] jakobz.livejournal.com
Кстати от вероятности создать DefaultMessageBuilder два раза, автор кода не защитился.

Date: 2014-05-19 07:41 pm (UTC)
From: [identity profile] mr-st.livejournal.com
Хотя я не совсем прав. Вот такое точно безопасно
class A
{
private static A _instance = new A();
}

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 10th, 2025 05:57 am
Powered by Dreamwidth Studios