Re[8]: IEnumerable в Hashtable
От: Аноним  
Дата: 28.12.05 14:56
Оценка:
Здравствуйте, scif, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


А>>Отсюда делаем вывод что читать из hashtable можно только поэлементно, т.е. нельзя использовать foreach. Правильно?

S>Почему же нельзя, какие из моих высказываний об этом говорят?
S>Единственный нюанс: при многопоточном доступе читающий поток не увидит изменений внесенных другими потоками, до окончания чтения.

Ну погоди, в предыдущем примере было 2 потока: один писал, другой читал — и так оно не работает. Если делать lock — то это уже не одновременный доступ, а последовательный.
Re[9]: IEnumerable в Hashtable
От: scif  
Дата: 28.12.05 15:18
Оценка:
Здравствуйте, Аноним, Вы писали:
S>>Здравствуйте, Аноним, Вы писали:
А>Ну погоди, в предыдущем примере было 2 потока: один писал, другой читал — и так оно не работает. Если делать
А>lock — то это уже не одновременный доступ, а последовательный.
Да,.....
Муть получаеться, это я видать о другом думал когда писал.
доступ действительно последовательный, хоть и из разных потоков но к форичу это отношения не имеет.
Re[10]: IEnumerable в Hashtable
От: scif  
Дата: 28.12.05 15:30
Оценка:
Здравствуйте, scif, Вы писали:

S>Здравствуйте, Аноним, Вы писали:

S>>>Здравствуйте, Аноним, Вы писали:
А>>Ну погоди, в предыдущем примере было 2 потока: один писал, другой читал — и так оно не работает. Если делать
А>>lock — то это уже не одновременный доступ, а последовательный.
S>Да,.....
S>Муть получаеться, это я видать о другом думал когда писал.
S>доступ действительно последовательный, хоть и из разных потоков но к форичу это отношения не имеет.

Разве что табличка эта большая будет, и ее чтение будет блокировать остальные потоки на долго.
Тогда форич использовать нецелесообразно.
Re[6]: IEnumerable в Hashtable
От: Воронков Василий Россия  
Дата: 28.12.05 15:45
Оценка:
Здравствуйте, scif, Вы писали:

SyncRoot вообще-то нужен для того, чтобы на него лочиться а не приводить к чему-либо и использовать как коллекцию.
Re[11]: IEnumerable в Hashtable
От: Аноним  
Дата: 28.12.05 16:50
Оценка:
Здравствуйте, scif, Вы писали:

S>Здравствуйте, scif, Вы писали:


S>>Здравствуйте, Аноним, Вы писали:

S>>>>Здравствуйте, Аноним, Вы писали:
А>>>Ну погоди, в предыдущем примере было 2 потока: один писал, другой читал — и так оно не работает. Если делать
А>>>lock — то это уже не одновременный доступ, а последовательный.
S>>Да,.....
S>>Муть получаеться, это я видать о другом думал когда писал.
S>>доступ действительно последовательный, хоть и из разных потоков но к форичу это отношения не имеет.

S>Разве что табличка эта большая будет, и ее чтение будет блокировать остальные потоки на долго.

S>Тогда форич использовать нецелесообразно.


Вот отсюда и следует вывод что читать из hashtable можно только поэлементно, т.е. нельзя использовать foreach в то время как в hashtable кто то пишет. Очень жаль
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.