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

December 2025

S M T W T F S
  12 3 456
78910111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 4th, 2025 12:57 pm
Powered by Dreamwidth Studios