Потокобезопасность для статического класса и его членов: - Все ли члены статического класса потокобезопасны?
Является ли статический класс и его члены потокобезопасными? [в С#.NET]
comment
какой язык программирования?
- person JustMaximumPower   schedule 16.01.2013
comment
Спасибо @JustMaximumPower. Вопрос отредактирован.
- person SO19   schedule 16.01.2013
comment
взгляните на stackoverflow.com/questions /5839974/
- person JustMaximumPower   schedule 16.01.2013
Ответы (1)
Статические конструкторы являются потокобезопасными — они гарантированно будут запускаться только один раз для каждого домена приложения, прежде чем будут созданы какие-либо экземпляры класса или будут доступны какие-либо статические члены.
Другие статические методы не являются потокобезопасными как таковые, CLR не различает статические методы и методы экземпляра в этом аспекте.
Однако, если метод не обращается к каким-либо данным, которые могут быть видны другим потокам, или не публикует такие данные, его можно считать потокобезопасным. Это относится как к статическим, так и к экземплярным методам. В противном случае вам нужно добавить явную синхронизацию, чтобы сделать доступ к общему потоку данных безопасным.
person
Andrey Taptunov
schedule
16.01.2013