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

Вниз

Чисто теоретический вопрос   Найти похожие ветки 

 
Merlin   (2002-02-21 01:46) [0]

Такой тест:
1. Открываем одну сессию к какой-то базе
2. даем один навороченный SQL запрос к базе, который (сам запрос) выполняется, скажем, 3 секунды (ну, очень навороченный :)
3. даем второй навороченный SQL запрос к базе, который выполняется, скажем, 2 секунды.
Если эти два SQL запроса расположить в программе друг за другом, то, понятно они будут выполняться последовательно.
А теперь внимание вопрос :) если я создаю 2 потока в которых эти два вышеописанных запроса запускаются одновременно. Напоминаю, у нас только одна открытая сессия.

Если каждому потоку открыть свою сессию, то понятно, ответы они получат одновременно (ну, почти), а вот в случае одной сессии, будут ли эти запросы посланы и обработаны параллельно, или же, так же, как и в случае с обычной программой, последовательно?


 
Suntechnic   (2002-02-21 05:00) [1]

>Merlin © (21.02.02 01:46)
TDatabase это НЕ потоко безопасный класс. И если ты хочешь последующего секса, то можешь конечно делать и так. Тут встречались товарищи, аргументы которых сводились к следующему: "я так делал и у меня всё работало..." Это всё равно что сообщить всему люду, что всю жизнь бегал на красный свет и до сих пор ещё жив. Что произойдёт сказать достаточно трудно. Скорее всего в один прекрасный момент поймаешь исключение. По крайней мере, если авторы VCL настаивают на использовании TSession для каждого потока отдельно, то я бы к ним прислушался.


 
EAlexander   (2002-02-21 10:54) [2]

если БД - Oracle, то все запросы от одной сессий выполняются последовательно независимо от того как это в программе.


 
panov   (2002-02-21 10:58) [3]

>EAlexander © (21.02.02 10:54)
уточню(про ORACLE): если не используется MTS...


 
EAlexander   (2002-02-21 11:14) [4]

to panov
это да, только реально это MTS кто-нибудь использует. IMHO, пока это достаточно сложно и наверно потребует дополнительной настройки у пользователя. для ускорения и удобства проще запросы продумывать лучше :)



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

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

Наверх





Память: 0.45 MB
Время: 0.008 c
14-67002
savva
2002-02-08 11:55
2002.03.21
Кажется скоро буду еще вирусы... Готовьтесь :))


1-66917
archer
2002-03-06 16:40
2002.03.21
Проблема с Delphi5 под Win2000


14-67013
Shiza
2002-02-08 18:49
2002.03.21
Вирусы в Delphi


3-66754
lvi
2002-02-21 14:34
2002.03.21
Люди помогите новичку задать значение переменной внутри процедуры в Interbase


1-66873
HELPME
2002-03-05 18:09
2002.03.21
СРОЧНО!!!!!!!!!!!!!!!!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский