Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];

Вниз

Можно ли запихнуть выполнени SQL-запроса в отдельный поток?   Найти похожие ветки 

 
AlexWeb   (2003-09-01 13:08) [0]

Как это отразится на работе программы в целом?
Я использую IBX компоненты.


 
Zacho   (2003-09-01 13:24) [1]

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


 
MsGuns   (2003-09-01 13:37) [2]

Разделяй обработку транзакциями


 
АлексейК   (2003-09-01 13:42) [3]

Делай ассинхронный запрос.


 
Zacho   (2003-09-01 13:52) [4]


> MsGuns © (01.09.03 13:37) [2]

Если это надо для "параллельного" выполнения нескольких запросов - то не поможет, запросы в контексте одного коннекта выполняются последовательно, независимо от того, в одной они транзакции или в разных.

> АлексейК (01.09.03 13:42) [3]

А что это такое ? Тем более в IBX ?


 
MsGuns   (2003-09-01 13:58) [5]

>Zacho © (01.09.03 13:52) [4]

Еще не проснулся (вчера трошечки того... до 6 утра);(((

Для параллирования работы сервера недостаточно две транзакции - надо два коннекта.


 
AlexWeb   (2003-09-01 15:18) [6]

Что будет если при выполнении запроса замочить поток?


 
Digitman   (2003-09-01 15:23) [7]


> AlexWeb



> Что будет если .. замочить


хреново будет
сервер об этом ничего не знает


 
AlexWeb   (2003-09-01 15:34) [8]

> Digitman © (01.09.03 15:23) [7]

А отменить выполнение запроса на сервере можно или нет?


 
Digitman   (2003-09-01 15:39) [9]

можно.
еслит запрос выполняется в контексте SP и в WHERE-условии проверяет состояние некоего генератора

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


 
VID   (2003-09-01 19:25) [10]

To Digitman: хорошее народное решение, здорово ! :)


 
Digitman   (2003-09-02 08:24) [11]


> VID


и далеко не "свежее", кстати ... давно известное и не редко используемое многими


 
Рамиль   (2003-09-02 11:48) [12]

А собственно что бы запустить в отдельном потоке надо сделать следующее:
1. Скинуть на форму TSession.
2. DataSet не должен быть связан с DataSource;
3. Ну и собственно новый коннект и настроить его на соотв. сессию.


 
Zacho   (2003-09-02 12:36) [13]


> Рамиль © (02.09.03 11:48) [12]
> 1. Скинуть на форму TSession.
> 3. Ну и собственно новый коннект и настроить его на соотв.
> сессию.

Это для BDE, а у автора вопроса - IBX.

> 2. DataSet не должен быть связан с DataSource;

Почему ?


 
Рамиль   (2003-09-02 13:24) [14]


> Это для BDE, а у автора вопроса - IBX.

Ну значит делает сессии автоматически.


> Почему ?

Это не будет выолняться в рамках гдавного потока VCL


 
Zacho   (2003-09-02 13:34) [15]


> Рамиль © (02.09.03 13:24) [14]
> Ну значит делает сессии автоматически.

Да нет там вообще никаких сессий :)


 
Рамиль   (2003-09-02 15:16) [16]

Даже если нет, все равно многопоточный доступ к БД:-D



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

Форум: "Базы";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.01 c
1-71697
Fortuna
2003-09-11 06:59
2003.09.22
Работа программы с оперативки


3-71528
AlexDBases
2003-08-29 11:46
2003.09.22
Выбор локальной БД


3-71483
Tumcoat
2003-09-02 02:34
2003.09.22
Поиск в базе данных


3-71549
Alik$
2003-07-30 21:33
2003.09.22
Ошибка при активизации


9-71454
newuser5
2003-03-22 21:14
2003.09.22
DirectX: пропадают спрайты...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский