170 похожих чатов

В Singleton нормальная практика хранить переменные программы? Тоесть внутри класса

Singleton можно насоздавать переменных и с ними работать?

19 ответов

6 просмотров

Нормально. Но обычно в сиглтоне делают даблчек, чтобы он трейдсейф был

Alex- Автор вопроса
Alex
lock тот что в коде не дает потокобезопасности?

обычно вне лока проверяют первый раз, чтобы если объект уже создан, то просто отдать его, а не локаться

Alex
lock тот что в коде не дает потокобезопасности?

Решает. Я тут гугланул расходы на lock, 15ns выглядит норм. Так что пихуй

В целом так делают, но конкретно этот код выглядит достаточно сомнительно. Это мутабельный объект? А дальнейшие мутации защищаются блокировками?

Anton 『被遗忘的社会』
Нормально. Но обычно в сиглтоне делают даблчек, чт...

Имхо, double check — не очень нужно в сценариях, когда можно просто сделать статик. (и от статика я бы лично отказался в пользу однократной регистрации в энтрипоинте)

Alex- Автор вопроса
Alex
В нем могут изменятся только поля

"глобальные" переменные это плохо

Alex- Автор вопроса
Сергей
"глобальные" переменные это плохо

Других варинатов не нашел, нужен буфер для переменных чтобы данные из него в цикле подхватывали статические классы и ViewModel тоже могла их менять

Alex
Других варинатов не нашел, нужен буфер для перемен...

ну как сказал доктор у тебя могут возникнуть проблемы если несколько потоков одновременно будут менять эти переменные

Alex- Автор вопроса
Сергей
ну как сказал доктор у тебя могут возникнуть пробл...

Синглтон с защитой потоков же, нужно еще и поля защищать будет?

Alex
Синглтон с защитой потоков же, нужно еще и поля за...

если есть вероятность что в поля будет запись из нескольких потоков - то да

Alex- Автор вопроса
Сергей
если есть вероятность что в поля будет запись из н...

Она есть, классы постоянно пишут новые данные

Alex
Она есть, классы постоянно пишут новые данные

https://docs.microsoft.com/en-us/dotnet/api/system.threading.readerwriterlock?view=net-5.0 можешь что-то такое посмотреть, но в целом тема синхронизации потоков достаточно объемная

Alex
Синглтон с защитой потоков же, нужно еще и поля за...

Так у тебя защита только при создании инстанса

Alex- Автор вопроса
Alex
В нем могут изменятся только поля

Ну а ты их изменение защищаешь локом?

Alex- Автор вопроса
Dr. Friedrich von Never
Ну а ты их изменение защищаешь локом?

В этом и проблема что нет, покачто незнаю каким образом их защищают, буду читать

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Всем привет, после Си стоит учить плюсы или лучше на раст перейти?
Linus
8
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
значить например он учился в СДУ то получается он особенный?)
Asets Serikov
11
Карта сайта