Автор | Сообщение |
|
| |
Пост N: 17
Зарегистрирован: 25.07.06
|
|
Отправлено: 05.09.06 13:14. Заголовок: Тормоза с InKey() в Clipper 5.2e
Может это уже обсуждалось? В общем ситуация такая... В цикле печати стоит обработчик нажатия на клавишу на базе InKey() (в основном для срочного прерывания печати). Под Clipper 5.01 все нормально работало, а под 5.2 начались тормоза и, как выяснилось, связанные именно с InKey(). Ведь Inkey() без параметров вообще не должен ждать ввода с клавы. А получается чего-то тормозит. Кто-нибудь сталкивался в подобным?
|
|
|
Ответов - 9
[только новые]
|
|
|
| |
Пост N: 34
Зарегистрирован: 08.07.06
|
|
Отправлено: 05.09.06 13:56. Заголовок: Re:
программа работает в protected mode ? если да, тогда это "нормально" - большая часть процессорной мощности тратится на переключение между защищенным и "обычным" режимом, в котором работает INKEY() - сохраняются и восстанавливаются регистры, стеки, служебные массивы и тп. я вышел из подобной ситуации простым способом: проверяю юзера после печати каждых 15-25 строчек документа - тормоза сильно падают, а для обработки реакции юзера вполне достаточно.
|
|
|
|
| |
Пост N: 18
Зарегистрирован: 25.07.06
|
|
Отправлено: 05.09.06 14:53. Заголовок: Re:
Sergy пишет: цитата: | программа работает в protected mode |
| Точно. В protected. Спасибо за информацию
|
|
|
|
| |
Пост N: 19
Зарегистрирован: 25.07.06
|
|
Отправлено: 05.09.06 16:19. Заголовок: Re:
Sergy пишет: цитата: | "обычным" режимом, в котором работает INKEY() |
| И еще вдогонку вопрос. А функция InKeyTrap() из CTools тоже работает в обычном режиме?
|
|
|
|
| |
Пост N: 21
Зарегистрирован: 25.07.06
|
|
Отправлено: 06.09.06 12:26. Заголовок: Re:
И вообще, где-нить существует список клипперовских и CT -функций, которые не работают в защищенном режиме?
|
|
|
|
| постоянный участник
|
Пост N: 61
Зарегистрирован: 24.09.05
|
|
Отправлено: 06.09.06 17:16. Заголовок: Re:
alexmar пишет: цитата: | а под 5.2 начались тормоза и, как выяснилось, связанные именно с InKey(). |
| вы чо блин издеваетесь что ли? неделю назад тормоза обсуждали!
|
|
|
|
| |
Пост N: 24
Зарегистрирован: 25.07.06
|
|
Отправлено: 07.09.06 08:16. Заголовок: Re:
suv2 пишет: цитата: | неделю назад тормоза обсуждали! |
| Если ты про это, то, каюсь, прозевал конец обсуждения. Спасибо, что сказал. Пошел читать ps Но в данном случае причина тормозов была как раз именно в переходах из защищенного режима. В обычном режиме было все Ok
|
|
|
|
| |
Пост N: 26
Зарегистрирован: 25.07.06
|
|
Отправлено: 07.09.06 10:18. Заголовок: Re:
Сорри... Еще раз проверил и убедился, что ошибался. Тормоза были по причине, которую вот здесь объяснил suv2. Я вызывал TSInstall() при инициализации программы. И в циклах с Inkey() начинались тормоза. Буду переделывать.
|
|
|
|
| постоянный участник
|
Пост N: 65
Зарегистрирован: 24.09.05
|
|
Отправлено: 08.09.06 13:47. Заголовок: Re:
tsinstall - это из моей библиотеки))) она дремучей версии наверняка) сейчас она поддерживает выгрузку (tssupport(.T.|.F.)) но все сказанное раньше - верно
|
|
|
|
| постоянный участник
|
Пост N: 66
Зарегистрирован: 24.09.05
|
|
Отправлено: 08.09.06 13:50. Заголовок: Re:
еще следует сказать, что сам по себе protect mode (blinker exe protected, dpmi) - медленный. По определению. Программа реального режима работает в разы быстрее. Но в реальном режиме работать нереально))) Памяти не хватает для уже более-менее средней проги. Так что dpmi альтернативы нет. Но тормоза из-за избыточной разгрузки - еще больше, чем тормоза из за dpmi
|
|
|
|