Oct. 25th, 2007

juan_gandhi: (Default)
Тут мы обсуждали задачку, которую я подбросил недавно интервьюируемому.

В общем виде задача такая - есть словарь, ключ->значение, и его модифицируют параллельно сто threadов, и надо, чтобы не мешали друг другу.

Ну, чтобы не мешали, значит, нужно что-то синхронизировать. То есть, регулировать доступ, то есть, применять Прокси Паттерн (шаблон, что ли?)

Вырисовалось два решения.

1. Промежуточный индекс, от ключа к "уникальному ключу", и основной индекс, от "уникального ключа" к значению.

2. в Dictionary хранить не собственно значения, а завернуть значения в transparent enclosure, и хранить, соответственно, этих представителей. Которые и должны блокировать одновременную модификацию.

Меня тут смущает одно - а если записи ещё нету - некоторые threads её создают, и другие тоже создают... сто threadов ломанутся создавать новую запись для одного и того же ключа. Что-то надо делать, а? А что?
juan_gandhi: (Default)
Сначала - стоматологическое доказательство существования божия. "Зуб даю, бог есть".
Read more... )

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

September 2025

S M T W T F S
 1 2345 6
78 9 10 111213
14 151617 181920
212223 24252627
28 2930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 30th, 2025 01:05 am
Powered by Dreamwidth Studios