Stack Overflow на русском Asked by GwenBleidd on July 30, 2020
В чем различие между:
Interlocked
- если нужно атомарно изменить значение одной простой переменной.
lock
- если нужно изменять сложные (составные) типы или множество простых.
Mutex
- используется для межпроцессной коммуникации (в отличие от межпоточной).
Semaphore(Slim)
- если нужно ограничить количество потоков, работающих одновременно с ресурсом.
ReaderWriterLock(Slim)
- реализует стандартный паттерн "Один писатель - много читателей". Судя по многочисленны отзывам, страдает плохой производительностью, даже версия Slim. Устарел. В некоторых случаях его можно заменить на Task + pipeline.
Потокобезопасные коллекции из System.Collections.Concurrent
- для безопасной работы с коллекциями объектов из нескольких потоков.
Кардинальное решение проблемы - переход на иммутабельные (неизменяемые) типы. В частности, коллекции System.Collections.Immutable
. Нет разделяемых ресурсов - не нужна синхронизация.
Correct answer by Alexander Petrov on July 30, 2020
1 Asked on December 19, 2021 by simatsu-edgeworth
2 Asked on December 19, 2021
0 Asked on December 19, 2021 by gamm
c visual c %d1%83%d0%ba%d0%b0%d0%b7%d0%b0%d1%82%d0%b5%d0%bb%d0%b8
3 Asked on December 19, 2021
0 Asked on December 19, 2021 by mike-waters
2 Asked on December 19, 2021 by sergey-kuznetsov
1 Asked on December 19, 2021 by elena-zinovyeva
1 Asked on December 19, 2021
1 Asked on December 19, 2021 by nikto
python search %d0%b8%d0%b7%d0%be%d0%b1%d1%80%d0%b0%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f %d1%8f%d0%bd%d0%b4%d0%b5%d0%ba%d1%81
1 Asked on December 18, 2021 by rr-zz
c c11 %d0%bf%d1%80%d0%b5%d0%bf%d1%80%d0%be%d1%86%d0%b5%d1%81%d1%81%d0%be%d1%80
1 Asked on December 18, 2021
c %d0%bc%d0%b0%d1%81%d1%81%d0%b8%d0%b2%d1%8b %d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0 %d1%87%d0%b8%d1%81%d0%bb%d0%b0
1 Asked on December 18, 2021
1 Asked on December 18, 2021
1 Asked on December 18, 2021
1 Asked on December 18, 2021
1 Asked on December 18, 2021 by ostet
Get help from others!
Recent Questions
Recent Answers
© 2022 AnswerBun.com. All rights reserved. Sites we Love: PCI Database, MenuIva, UKBizDB, Menu Kuliner, Sharing RPP