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

Вниз

Совместное использование TTable   Найти похожие ветки 

 
Alex_C   (2008-04-03 16:54) [0]

Вопрос: есть справочная таблица TTable. Ее одновременно могут использовать несколько тредов. Естественно возникает проблема, когда сразу несколько тредов к ней обращаются. Правильно ли я сделал такую ф-цию поиска, чтобы этого изизбежать:
procedure FindInTable(Table: TTable; CS: TRTLCriticalSection);
begin
 EnterCriticalSection(CS);
 try
   Table.First;
   // Чего-то там ищем
 finally
   LeaveCriticalSection(CS);
 end;
end;
Естественно критическая секция определена ранее одна для всех процессов.


 
Сергей М. ©   (2008-04-03 16:56) [1]


> TTable. Ее одновременно могут использовать несколько тредов


Если мне не изменяет память, не могут, даже при организации синхронного доступа.


 
Игорь Шевченко ©   (2008-04-03 16:57) [2]

многопоточное приложение для BDE должно следовать описанию в справке.

а правильно ты сделал или нет, тебе покажет твой собственный опыт.


 
Loginov Dmitry ©   (2008-04-03 22:51) [3]

> Правильно ли я сделал такую ф-цию поиска, чтобы этого изизбежать:


Нет. Не правильно. Для каждого треда необходимо создавать отдельно TDataBase, TSession и TTable/TQuery. Это намного проще, чем при твоем подходе ловить потенциальные глюки в дальнейшем. А они будут, особенно, если с TTable связаны какие-либо визуальные компоненты.


 
DrPass ©   (2008-04-03 23:48) [4]


> Если мне не изменяет память, не могут, даже при организации
> синхронного доступа

Через Synchronize должно получиться, в этом случае процедурка будет переключаться в контекст основного потока



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
2-1206990412
anton
2008-03-31 23:06
2008.04.27
проверка орфографии


15-1205499532
[fs] BandQ
2008-03-14 15:58
2008.04.27
Хочу поделиться наработками (исходники)


2-1206896375
Левон
2008-03-30 20:59
2008.04.27
Работа программы Делфи


2-1207120915
Lexa11_2002
2008-04-02 11:21
2008.04.27
Как отобразить фото большого размера из базы


2-1207248239
Dark
2008-04-03 22:43
2008.04.27
Динамическое создание...