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

Вниз

Доооолгий Form.Showmodal?   Найти похожие ветки 

 
Vasilii   (2002-05-14 14:53) [0]

Всем Здраствуйте! Столкнулся с такой проблемой: при первичном открытии модальной формы (на каждый вызов форма create’ится, на close, соответственно, Form.Release) очень долго (~12 сек) выполняется Form.Showmodal. При последующих вызовах формы открытие происходит гораздо быстрее (~1.5 сек). Почему? Как решить проблему первого открытия формы?


 
Johnmen   (2002-05-14 15:11) [1]

1. Form.Release - это к чему ???!!!
2. Видимо в OnCreate или OnShow прописано что-то долгое и нудное... :-)))


 
Виктор Щербаков   (2002-05-14 15:13) [2]

А ты отладчиком её, отладчиком!
Может найдешь то, что так долго выполняется и нам расскажешь. Интересно же.


 
Vasilii   (2002-05-14 15:37) [3]

>Johnmen В порядке выполнения в программе:

Create > OnCreate - быстро
\/
Showmodal - очень медленно
\/
OnShow - быстро.


 
Johnmen   (2002-05-14 15:59) [4]

1. все-таки Release-то убери...
2. а в OnActivate ?


 
Vasilii   (2002-05-15 09:32) [5]

>Johnmen
1. Из хэлпа:"Use Release to destroy the form and free its associated memory." Я же говорил, что форма каждый раз создается заново.
2. Пусто.


 
koks   (2002-05-15 09:44) [6]

А что у тебя за форма - в смысле что не ней...


 
Vasilii   (2002-05-15 10:12) [7]

Много чего: Гриды, кнопки, панели.


 
Дмитрий757567   (2002-05-15 10:25) [8]

>Vasilii
А к гриду приклеен TQuery, который выполняет офигенный запрос к базе данных?


 
Vasilii   (2002-05-15 13:17) [9]

TQuery.Open происходит на TForm.FormShow, а торможение раньше, между TForm.FormCreate и TForm.FormShow.


 
Виктор Щербаков   (2002-05-15 13:24) [10]

to Vasilii ©
Есть замечательная кнопка F7. Она тебе поможет. Конечно это займет некоторое время, но ИМХО лучше чем гадать (и тебе и нам).


 
Vasilii   (2002-05-15 13:44) [11]

>Виктор Щербаков
F7 уводит в такие дебри. Ладно бы я ошибку искал, так ведь ищу задержку по времени, а считать в каком случае все циклы пробегают быстрее или медленнее по моему не реально. Но главное не могу понять: почему второй и последующие разы - быстро?! Может что-то куда-то кешируется?


 
Виктор Щербаков   (2002-05-15 13:47) [12]

Vasilii © (15.05.02 13:44)

> F7 уводит в такие дебри

А ты не лезь в дебри.
Ведь F8 еще есть :)
Используя комбинацию F7 и F8 можно найти долговыполняющуюся строчку.


 
Vasilii   (2002-05-15 14:12) [13]

А почему только в первый раз медленно?


 
Кулюкин Олег   (2002-05-15 14:21) [14]

2 Vasilii © (15.05.02 14:12)
Скорее всего, дело именно в запросе который выполняется при открытии формы.
А последующие открытия формы не тормозят благодаря кешированию.


 
Vasilii   (2002-05-15 14:54) [15]

Повторяюсь: На момент торможения запрос не выполняется. Форма КАЖДЫЙ раз создается заново. Все DataSet"ы переоткрываются (все запросы "перезапрашиваются").


 
Игорь Шевченко   (2002-05-15 15:11) [16]

Существует кэш у сервера, благодаря ему последующие запросы могут выполняться быстрее.

С уважением,


 
Vasilii   (2002-05-15 15:19) [17]

>Игорь Шевченко А в случае постоянного изменения данных?


 
Игорь Шевченко   (2002-05-15 15:22) [18]

И в случае постоянного изменения данных тоже :-)
Скорость обработки запроса, в основном, определяется сервером.
Впрочем, смотря какой запрос и какой сервер...

С уважением,


 
Кулюкин Олег   (2002-05-15 16:43) [19]

2 Vasilii
Проведем эксперимент.
Закомментарьте открытие датасета, и посмотрите, останутся ли тормоза.
Если да, то см. Виктор Щербаков © (15.05.02 13:24) (про F7)


 
Vasilii   (2002-05-16 11:30) [20]

Закоментил - остались. Буду мучить F7.



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

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

Наверх




Память: 0.51 MB
Время: 0.018 c
1-88462
IronWit
2002-05-17 17:20
2002.05.27
как менять программно ширину и высоту колонок в stringgrid


1-88553
Hela
2002-05-16 14:16
2002.05.27
Экспорт из FastReport в Word


3-88387
Юляша
2002-05-03 16:22
2002.05.27
Элементы управления в ячейках DBGrid


1-88533
adav
2002-05-15 11:28
2002.05.27
Invalid floating point operation. Не могу разобраться


1-88425
Dr.Aleck
2002-05-16 21:52
2002.05.27
Как при помощи Делфи6 поменять ф-ию в чужой ДЛЛ-ке?