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

Вниз

Проблемы с многопоточным доступом к таблице (Paradox, BDE, Delphi   Найти похожие ветки 

 
ki11er   (2003-12-01 15:27) [0]

Суть проблемы такая.
Нужно, чтобы из одного потока в таблицу добавлялись записи в то время как во втором потоке выполняется длинный запрос на чтение.
Однако при таком раскладе запрос на чтение возвращает одни и те же записи по несколько раз. В принципе, это не очень страшно, однако эти "фантомы" прячут под собой реальные записи, которые вообще не возвращаются.

Исходники теста (на дэлфях и на билдере) здесь:
http://www25.brinkster.com/alex99933/db_test.html

Спасибо.


 
Сергей К.   (2003-12-01 15:57) [1]

Как мне кажется Борланд, рекомендует для таких случаев использовать на каждый запрос отделный объект TSession.

Где то на сайте Борланда была статья на данную тему


 
ki11er   (2003-12-01 16:09) [2]

Все статьи на борланде (да и в других местах) уже прочитаны. Все сделано в соответствии с рекомендациями (взгляните на исходники). Однако глючит :(((


 
Dred2k ©   (2003-12-01 17:37) [3]

> ki11er (01.12.03 15:27)

Только что скомпилил и запустил твою прогу - все живет. На фоне записи добавляются, запрос возвращает все больше записей при каждом вызове. Поле Primary Key не отсортировано почему-то - из-за этого "фантомы", что ли? (значения 1, 2, 3 ... находятся не в самом начале, к примеру)


 
ki11er   (2003-12-01 17:58) [4]

Отсортировано по времени.
Если присмотреться повнимательнее - найдешь одинаковые записи. В них все будет одинаково, даже первичный ключ.
Особенно заметно на больших таблицах (создай таблицу записей на 300000 - 500000)



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
6-75295
Юстос
2003-10-27 10:21
2003.12.23
Как обработать данныек из формы в webservice application


8-75278
nuflin
2003-08-24 18:26
2003.12.23
вопрос по OpenLG


1-75155
с13
2003-12-07 09:08
2003.12.23
Scroll Bar


8-75273
dork
2003-08-25 05:26
2003.12.23
OpenGL


6-75288
AntiFriz
2003-10-22 07:11
2003.12.23
TIdHttp - как закачать картинку