Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
7-75421
OTMOPO3OK
2003-10-03 12:13
2003.12.23
Как сделана AIDA: инфа от S.M.A.R.T.; инфа о сост. материнки


14-75385
SergP
2003-11-28 08:49
2003.12.23
Интернет - свалка всякой заразы....


4-75444
Shaman O Mega
2003-10-29 16:01
2003.12.23
Semaphore vs Mutex


1-75150
kta
2003-12-09 16:42
2003.12.23
Как можно реализовать плавное проявление изображения bmp?


1-75238
Борец Анатолий
2003-12-10 16:21
2003.12.23
Memo-поле




   Наверх