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

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

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

19 ответов

15 просмотров

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

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
Ну а ты их изменение защищаешь локом?

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта