Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.28;
Скачать: CL | DM;

Вниз

совместный доступ к массиву из потоков   Найти похожие ветки 

 
fs_more   (2007-01-03 19:29) [0]

Мастера, подскажите, бьюсь не один день над вопросом...

1.Есть динамический массив, состоящий из записей.
2.Записи логически связаны между собой.
3.К массиву нужен доступ из 2 потоков одного процесса.
4.Одно логическое изменение массива обычно влечет за собой физическое изменение сразу нескольких записей (согласно п.2.).

Вопрос: как реализовать всю схему работы с массивом, чтобы избежать некорректной работы при совместно доступе, ведь без защиты вполне возможны варианты, когда один поток еще не дописал, а второй уже читает...


 
Eraser ©   (2007-01-03 19:38) [1]

> [0] fs_more   (03.01.07 19:29)

выполнять обработку данных в блоке кода, защищенного критической секцией.


 
Джо-со-смарта   (2007-01-03 20:46) [2]

Плюс для удобства  можно обернуть сам массив и методы работы с ним в отдельный класс.


 
Джо-со-смарта   (2007-01-03 20:47) [3]

Плюс для удобства  можно обернуть сам массив и методы работы с ним в отдельный класс.


 
bobby   (2007-01-03 22:47) [4]

Некий менеджер контролирует состояние массива и управляет работой потоков


 
Vga ©   (2007-01-04 19:19) [5]

В книге "C++ for Real Programmers" вроде изрядно про это говорится, хотя и для С++, но многое можно и в Delphi применять.



Страницы: 1 вся ветка

Текущий архив: 2007.01.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
15-1167919316
1111
2007-01-04 17:01
2007.01.28
AutoCAD


2-1168539990
Биритм
2007-01-11 21:26
2007.01.28
Перезагрузка компьютера


3-1162973372
jiny
2006-11-08 11:09
2007.01.28
Ширина заголовка строки в DbCross (frxDbCrossObject)


2-1168512166
DelphiLexx
2007-01-11 13:42
2007.01.28
Узнать насколько пикселей спущен Sroll


1-1165397551
newbie2
2006-12-06 12:32
2007.01.28
Поясните почему так не работает?