|
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
|
||||||
Синхронизация поков через Monitor30.04.2019, 21:02. Показов 751. Ответов 1
Метки нет (Все метки)
Есть такой пример в книге Рихтера
В этом примере показано, как использовать методы Enter и Exit метода Monitor для блокировки и разблокировки блока синхронизации объекта. Заметьте: реализация свойства требует вызовов методов Enter и Exit и наличия временной переменной dt. Это нужно для исключения возможности повреждения возвращаемого значения — это возможно, если в момент вызова потоком метода PerformTransaction к свойству обращается другой поток. Не понимаю последнее предложение. Насколько я понимаю, если один из методов будет вызван любым потоком или даже оба мотода примерно одновременно двумя потоками в любом случае в некотором потоке Monitor.Enter() сработает первым и обьект будет заблокирован для остальных потоков. Соответственно доступ к свойствам и переменным также будет заблокирован для остальных потоков. И порча данных невозможна или нет? Добавлено через 10 минут Кажется понял. Думаю пока свойство будет выполнять операторию return dt, обект будет уже разблокирован и за это время второй поток сможет заблокировать обьект для себя и изменить поле, а так локальная переменная останется не поврежденной.
0
|
||||||
| 30.04.2019, 21:02 | |
|
Ответы с готовыми решениями:
1
Синхронизация данных через интернет (VS2010) Синхронизация Active Directory и MSSQL через C# Синхронизация баз Access через Инет |
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
|
| 01.05.2019, 00:13 | |
|
ASDFD12, да, порча данных невозможна - как и сказано в цитате.
Невозможна она потому, что присутствует синхронизация. А та часть, которую вы не поняли, говорит о возможной ситуации при отсутствии синхронизации.
0
|
|
| 01.05.2019, 00:13 | |
|
Помогаю со студенческими работами здесь
2
Синхронизация через интернет Синхронизация Access через интернет Синхронизация потоков через InterlockedCompareExchange Синхронизация потоков через мьютексы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
. . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|