On-line: PSP, гостей 1. Всего: 2 [подробнее..]
АвторСообщение





Пост N: 12
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 31.07.06 13:11. Заголовок: И всё-таки часы отстают...


имеем: Clipper 5.2e (DBFNTX) PM + Blinker 6.0 + CTP + FT_OnTick + DosIdle
на время критичных операций вызываю DosIDle(FALSE)
но все равно, через некоторое время отстают часы от системных...

хелп плиз...


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 37 , стр: 1 2 All [только новые]


администратор




Пост N: 313
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 13:45. Заголовок: Re:


Dosidle выкинь ;)
Юзай это http://www.the-oasis.net/files/general/multi102.zip
Говорю про allkey()
На время критичных операций можно юзать что то типа
ft_onidle({|| ft_iamidle()})

для NT и тд
ft_onidle({|| ft_iamidle(15,.t.)}) // 15 подбирал руками , вроде оптимально получилось.


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 13
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 31.07.06 14:53. Заголовок: вопрос


посмотрел, вроде неплохо задумано, не понял одной вещи:

этот самый ALLKEY мне просто нужно включить в мою программу в виде исходника, а MENU TO, INKEY(), GET будут сами к ней обращаться, т.е. она перекрывает имя стандартного вызова библиотеки Clipper ?



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 314
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 15:06. Заголовок: Re:


Из того исходника я использую только Allkey()
Просто включи его в сборку и все свои вызовы (почти) Inkey() замени на Allkey()

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 14
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 31.07.06 15:50. Заголовок: получилось


подключил, заменил
#command [<k>:=] INKEY(<x>) => [<k>:=] ALLKEY(<x>)
и сделал FT_ONIDLE({||FT_IAMIDLE()})
все вроде заработало, на часы пока не смотрел, но остался важный момент: DBEDIT...

и ещё возникают вопросы:
1) FT_IAMIDLE на сколько должен снижать загрузку ? Мне кажется, чегой-то не очень...
2) где посмотреть про его параметры ?

Спасибо!




Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 315
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 16:17. Заголовок: Re:


Dima пишет:

 цитата:
для NT и тд
ft_onidle({|| ft_iamidle(15,.t.)})



У тебя какая операционка ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 316
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 16:23. Заголовок: Re:


Sergy пишет:

 цитата:
1) FT_IAMIDLE на сколько должен снижать загрузку ? Мне кажется, чегой-то не очень...
2) где посмотреть про его параметры ?


Посмотри NG к nanfor
http://www.blinkinc.com/dl/misc/nfkit.zip

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 15
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 31.07.06 17:02. Заголовок: вот


нашел описание здесь http://www.engwall.com/clipper/nfpat1a.htm
и почти во всем разобрался...
ALLKEY получается практически не нужен ?

в нашей сети много машин - от 200 до 3000 МГЦ, операционки Win98SE и WinXP - буду подбирать параметры FT_IamIdle()

от чего отталкиваться ?

Спасибо.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 317
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 17:34. Заголовок: Re:


Sergy пишет:

 цитата:
в нашей сети много машин - от 200 до 3000 МГЦ, операционки Win98SE и WinXP - буду подбирать параметры FT_IamIdle()


я сделал так

if ol_ismswin()
ft_onidle({|| ft_iamidle()})
else
ft_onidle({|| ft_iamidle(15,.t.)})
endif


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 16
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 31.07.06 17:44. Заголовок: у меня так:


у меня так:

FT_OnIdle({||FT_IamIdle(15,IsWin2K())})
--------------------------------------------------
буду подбирать параметр 15 и проверять часы.

Спасибо за помощь!


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 318
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.06 17:47. Заголовок: Re:


Кстати я тоже подбирал и остановился именно на 15

Удачи !

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 22
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 08.08.06 12:53. Заголовок: Re:


после недельного тестирования замечено следующее:

1) часы не отстают (даже чуточку спешат... мне кажется...) но видимо это из-за того, что рабочая станция синхронизируется с контроллером домена (?)

2) при любом значении параметра nIntensity (от 0 до 30) наблюдается задержка с обновлением окна задачи до нажатия на любую клавишу, например:

сохраняем текущий экран, рисуем окошко, подготваливаем все GET поля, даем команду READ... в 10% случаев окно не появится до нажатия на любую клавишу (я обычно для "ускорения обновления" нажимаю Ctrl) причем в полноэкранном режиме такое налюдается при значениях nIntensity свыше 5.
---------------------------------------------------
вот... пока придумал пару ходов:

1) в очередной раз перелопатить все исходники и вызывать FT_IamIdle() только на время ожидания ввода с клавиатуры...MENU TO, INKEY(x), ACHOICE(), DBEDIT() и тп что тянет за собой кучу проблем: когда DBEDIT или ACHOICE вызывает call-back функцию и эта функция начинает интенсивную работу... значит на входе в эту функцию снова нужно вызывать OnIdle() без параметров... а таких функций - десятки... замкнутый круг (?)

2) увеличить скорость обновления экрана консоли. Под Win98 этот параметр устанавливался в system.ini в секции [386enh] : windowupdatetime=10 (по умолчанию=50). В WinXP этот фокус не работает...

Заранее спасибо!


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 11
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 09.08.06 19:43. Заголовок: Re:


Dima пишет:

 цитата:
Dosidle выкинь ;)

А как насчет TSlice?



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 332
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.08.06 20:10. Заголовок: Re:


alexmar пишет:

 цитата:
А как насчет TSlice?


знакомое название , где взять ?

ЗЫ
не SUV случайно делал ?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 12
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 09.08.06 20:51. Заголовок: Re:


Dima пишет:

 цитата:
где взять ?


Ну дык, вроде здесь и лежит http://spravki.net.ru/files/utils/Tslice.arj
Да, автор SUV

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 23
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 10.08.06 14:02. Заголовок: Re:



 цитата:
Dima пишет:

цитата:
Dosidle выкинь ;)

А как насчет TSlice?




так с Tslice всё и началось - часы отставали... + не было средств контроля за включением/выключением модуля... DosIdle позволяет иногда "выключать" себя, если это необходимо параметром DosIdle(FALSE)


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 46
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 16.08.06 17:50. Заголовок: Re:


см след. сообщение

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 47
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 16.08.06 17:53. Заголовок: Re:


В моей tslice выгрузка сто лет уж как есть, просто сюда не заливалась - нах никому не нужна. Про отставание часов тож писал - там все хитро, но победить можно. А уж про то, что надо делать, чтобы не жать CTRL для ускорения программы - это я уже столько раз писал на форуме, что и повторять нет смысла

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 25
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 17.08.06 11:15. Заголовок: Re:


будь человеком - скинь сразу ссылки - у меня интернет медленный, а поиск по форуму криво работает...



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 334
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.08.06 11:27. Заголовок: Re:


suv2 пишет:

 цитата:
это я уже столько раз писал на форуме, что и повторять нет смысла


Напиши еще раз пожалуйста

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 53
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 17.08.06 15:57. Заголовок: Re:


Да там писанины на 4 тома "Войны и мира".

Конспективно - функция разгрузки замедляет выполнение программы. Разгрузка должна вызываться только в те моменты времени, когда программа ДЕЙСТВИТЕЛЬНО ожидает нажатия клавиши (т.е. ей нечего делать). Когда идет обработка баз - функция разгрузки НЕ ДОЛЖНА вызываться. Всякие левые (читай - сделанные не мной) библиотеки разгрузки устроены таким образом - они вешаются на функцию считывания клавиатуры и попутно делают разгрузку. Однако, клиппер устроен так, что он считывает клавиатуру ПОСТОЯННО, даже в те моменты, когда идет работа. Следовательно, разгрузка вызывается в те моменты, в которые вызываться не должна. В результате программа работает в десятки раз медленнее и для ее ускорения приходится жать Ctrl.

Моя версия разгрузки встроена непосредственно в переделанное мной ядро клиппер, и она вызывается только в те моменты, когда действительно программист В СВОЕМ КОДЕ (PRG) вызывает функцию считывания клавиатуры INKEY.

Но даже такая грамотная библиотека разгрузки может приводить к нежелательным последствиям. Например, программисты часто проверяют не нажат ли ESC, чтобы выйти из длительно работающего цикла. Следовательно, чем быстрее процессор и следовательно чем чаще вызывается INKEY() в цикле и следовательно чем чаще вызывается разгрузка - тем сильнее тормозит программа, которая пытается делать полезные действия в цикле.

Для преодоления этих трудностей надо применять специальные приемы программирования. 1) Например, отключать разгрузку на время работы цикла. 2) Или считывать клавиатуру не чаще, чем 1-2 раза в секунду. 3) Или не считывать клавиатуру вообще

Второй способ предполагает использование seconds(), который сильно тормозит систему. Использование вместо seconds() своей функции, считывающей время не через сервис DOS, а из области данных BIOS приводит к очевидному замедлению системных часов, т.к. виндовый эмулятор DOS выполняет обновление часов при определенных обращениях DOS-программы к сервису DOS/BIOS. Такое же замедление системных часов может быть (не всегда) и при способе 3)

Следовательно, наилучшим решением будет 2) с чтением времени своей функцией, написанной специальным образом

зы. На клиппер в наше время писать СОВСЕМ не просто.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 54
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 17.08.06 16:13. Заголовок: Re:


Есть еще 4-е решение. Вместо inkey() использовать MyInkey(), в которой (И ТОЛЬКО В НЕЙ) вручную делать разгрузочные вызовы (т.е. вызывать функцию, которая делает один разгрузочный вызов. Или включать разгрузку, а по выходу из MyInkey - выключать разгрузку, если соответствующая библиотека позволяет это делать). Для проверки выходов из цикла - использовать inkey(), при этом разгрузочных вызовов делаться не должно. При этом все стандартные интерфейсные функции (если они используются) должны быть ПЕРЕПИСАНЫ заново (переделка inkey на MyInkey). Это get-система, wait, menu to, browse, dbedit. Часть функций - есть в исходниках на PRG в комплекте поставки, а такие вещи как achoice - надо переписывать самому.

Т.е. простых путей нет и для того, чтобы клиппер-программа работала быстро и при этом не тормозила систему в целом, когда не программа не работает - надо потрудиться. Кто ленится - у того тормозит либо система, либо ему надо жать CTRL, чтобы программа работала быстро))) либо часы системные серьезно отстают )

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 335
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.08.06 16:57. Заголовок: Re:


suv2
СПАСИБО ЮРА !!!!


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 26
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 17.08.06 17:28. Заголовок: Спасибо, мусчино!


у меня были похожие мысли:


 цитата:

вот... пока придумал пару ходов:

1) в очередной раз перелопатить все исходники и вызывать FT_IamIdle() только на время ожидания ввода с клавиатуры...MENU TO, INKEY(x), ACHOICE(), DBEDIT() и тп что тянет за собой кучу проблем: когда DBEDIT или ACHOICE вызывает call-back функцию и эта функция начинает интенсивную работу... значит на входе в эту функцию снова нужно вызывать OnIdle() без параметров... а таких функций - десятки... замкнутый круг (?)



буду думать в этом направлении. Спасибо!

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 55
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 21.08.06 14:00. Заголовок: Re:


suv2 пишет:

 цитата:
Есть еще 4-е решение. Вместо inkey() использовать MyInkey(), в которой (И ТОЛЬКО В НЕЙ) вручную делать разгрузочные вызовы



при этом надо помнить, что если в цикле тогда для проверки на выход надо использовать простую inkey(), чтобы работа цикла не тормозилась

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 27
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 07.09.06 10:33. Заголовок: вопросы к suv2 по поводу tslice


suv2 пишет:

 цитата:
В моей tslice выгрузка сто лет уж как есть, просто сюда не заливалась - нах никому не нужна.


а каким образом она выключается?
suv2 пишет:

 цитата:
Моя версия разгрузки встроена непосредственно в переделанное мной ядро клиппер, и она вызывается только в те моменты, когда действительно программист В СВОЕМ КОДЕ (PRG) вызывает функцию считывания клавиатуры INKEY.

Так получается, что TSInstall() можно использовать с переделанным ядром клиппера?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 28
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 07.09.06 18:34. Заголовок: для Sergy


Sergy пишет:

 цитата:
скинь сразу ссылки - у меня интернет медленный, а поиск по форуму криво работает...

Кажется здесь это обусуждалось

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 67
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 08.09.06 14:08. Заголовок: Re:


alexmar пишет:

 цитата:
а каким образом она выключается?



tssupport (.T.|.F.) - вроде так

alexmar пишет:

 цитата:
Так получается, что TSInstall() можно использовать с переделанным ядром клиппера?



Раньше было - с любым. Библа была навесная и работала по типу вируса. Она искала в памяти определенный код, стирала часть кода, писала код передачи управления на себя, потом делала свои черные дела, выполняла сама затертую ранее часть кода и отдавала дальше управдение клипперу. Потом я посмотрел, как делает разгрузку Стекленев - оказалось, что есть некий апи и можно вызывать свою функцию разгрузки более дешевым способом. Но когда я попробовал так и сяк, мне не понравился ни мой способ, ни способ Стекленева. Если не изменяет память - что мой код, что его - вызывается постоянно. Например даже тогда, когда пользователь непрерывно стучит по клавиатуре. В этом случае вызывать разгрузку абсурдно - я например могу вводить строку, а программа выбирает из базы подходящие строки, зачем замедлять этот процесс? Кроме этого, если мне не изменяет память, была и более серьезная причина. Клиппер опрашивает клавиатуру в фотовом режиме и функция разгрузки (в моей библиотеке и в его) вызывается все равно даже тогда, когда я не вызываю inkey, а работаю с базами.

И пришлось пойти в ядро, расковырять его и сделать вызов разгрузки только тогда, когда клиппер пытается ДЕЙСТВИТЕЛЬНО (с помощью ЯВНОГО ВЫЗОВА INKEY) считать клавиатуру + а пользователь ничего в данный момент не жмет (т.е. инкей ожидает ввода)

Эту задачу на момент ее рещения мне было проще сделать не навесным способом, а встроить непосрелдственно в ядро, поскольку я на тот момент обладал большинством декомпилированных исходников ядра клиппер-машины. И чем писать внедряющийся код, я просто вставил разгрузку в ядро.

Поэтому эта библиотека доступна только вместе с ядром) Могу залить в принципе. Из того, что мне там нравится - макрооператор проглатывает строки до 2048 символов ) ну и так всякие исправления, фиксы багов всякие, с отладчиком всякие приколы)

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 29
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 08.09.06 18:01. Заголовок: Re:


suv2 пишет:

 цитата:
Поэтому эта библиотека доступна только вместе с ядром) Могу залить в принципе

Пока, пожулуй, не нужно. Сейчас пробую встраивать разгрузку, как Sergy, через FT_OnIdle({||FT_IamIdle())}) в модернизированную MyInKey() с учетом того, о чем говорилось здесь выше. Если все будет нормально, то остановлюсь на этом варианте.

ЗЫ Обнаружил, правда, что FT_IamIdle() конфликтует с отладчиком. Вываливается по GPF после того, как в отладчике 10- 15 раз нажмешь клавиши управления. Приходится отключать разгрузку при работе од отладчиком. Sergy, ты работал с FT_IamIdle(). У тебя такого не было?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 36
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 09.09.06 13:33. Заголовок: Re:


с отладчиком не работал ВАЩЕ, поэтому тут ничем не смогу помочь...
--------------------------------------
сейчас остановился на FT_IamIdle() - пока полет нормальный.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 71
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 14.09.06 10:48. Заголовок: Re:


alexmar пишет:

 цитата:
ЗЫ Обнаружил, правда, что FT_IamIdle() конфликтует с отладчиком



Отладчик конфликтует сам с собой. Для того, чтобы нахрен слететь, ему не нужно никаких фт_онидле. )) Вполне себе самодостаточная вещь )))

Но вообще не удивлен)) Есть только ОДНА правильная разгрузка - разгрузка в моём ядре. Все остальное - кривота. Пользуйтесь правильным софтом)

Кстати, кто пользуется АДС - тому и этой разгрузки недостаточно, он должен пользоваться особыми навесными функциями разгрузки для АДС ) Требуйте пропатченую мной версию в аптеках города

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 73
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 14.09.06 11:01. Заголовок: Re:


Sergy пишет:

 цитата:
с отладчиком не работал ВАЩЕ



Напрасно, батенька. Уж на что я сам пишу без ошибок ))) Но и то пользуюсь, чтобы в этом убедиться

Sergy пишет:

 цитата:
сейчас остановился на FT_IamIdle() - пока полет нормальный



Там трудностей много, как я писал. Неужто уже все победил?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 42
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 14.09.06 12:24. Заголовок: Re:



 цитата:

цитата:
сейчас остановился на FT_IamIdle() - пока полет нормальный

Там трудностей много, как я писал. Неужто уже все победил?




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

Пока решил поступить таким образом:

Написал функцию SetSysPower(nPercentage), которую вызываю перед началом критичного цикла так:
x := SetSysPower(100) // мне нужно 100 процентов мощности, + возвращаем установленное значение для сохранения
// здесь в цикле делаю что-то...
SetSysPower(x) // восстанавливаю первоначальное значение.

-----------------------------
в функции SetSysPower() - если требуемое значение мощности более 50 (процентов) - выключаю все FT_IamIdle() - программа работает реально быстро, безо всяких Ctrl
Если требуемое значение ниже 50 - восстанавливаю разгрузку системы.
----------------------------
При запуске программы делаю SetSysPower(10) - по умолчанию разгрузка включается. Исходников много, поэтому добавляю по мере реальной необходимости. Потом, если ВДРУГ решу перейти на твой вариант, когда разгрузка по умолчанию ВЫКЛЮЧЕНА, добавленные фрагменты кода просто не будут мешать: т.е. возвращаемое значение для x и так будет равно 100.
----------------------------

Слушай, вот ты всё время говоришь про какое-то переделанное ядро Клиппер: у меня 5.2e + DBFNTX - мне оно можеот пригодиться? Если да - будь человеком, скинь куда-нибудь - давай посмотрим, чего из этого можно реально в жизни применить... Просто так получается, что клипперистов в России осталось человек 20 (судя по нашему форуму) - какой смысл делать из этого суперсекретный проект?







Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 77
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 14.09.06 14:01. Заголовок: Re:


так я и не говорю, что это секретно. надо просто сделать и выложить. внимательно посмотреть, все ли там в ядре самодостаточно и не находится ли какая-нибудь хрень уже не в ядре, а в моей библиотеке

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 44
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 14.09.06 18:29. Заголовок: Re:


suv2 пишет:

 цитата:
Там трудностей много, как я писал. Неужто уже все победил?

У меня переделка заняла где-то пол-дня. По умолчанию разгрузка выключена. Включаю только при вызове Inkey с параметром 0 или больше 0. Вместо штатных MENU TO, DBEDIT() и ACHOICE() использую свои, которые переделал с поддержкой разгрузки. Вроде все работает и тормозов особых нигде не наблюдаю.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 45
Зарегистрирован: 25.07.06
ссылка на сообщение  Отправлено: 14.09.06 18:34. Заголовок: Re:


Sergy пишет:

 цитата:
... так получается, что клипперистов в России осталось человек 20 (судя по нашему форуму)


off
Увы, печальный факт. И как хорошо, что этот форум еще жив. Наверно это последний заповедник клипперистов бывшего союза...

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 37
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 14.09.06 19:10. Заголовок: Re:


alexmar пишет:

 цитата:
Наверно это последний заповедник клипперистов бывшего союза...


Может, сделаем перепись оставшегося населения?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 87
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 15.09.06 12:56. Заголовок: Re:


alexmar пишет:

 цитата:
У меня переделка заняла где-то пол-дня. По умолчанию разгрузка выключена. Включаю только при вызове Inkey с параметром 0 или больше 0. Вместо штатных MENU TO, DBEDIT() и ACHOICE() использую свои, которые переделал с поддержкой разгрузки. Вроде все работает и тормозов особых нигде не наблюдаю



а вот и неправильно) включай разгрузку только в том случае, если инкей за целую секунду не получил никакой кнопки и продолжает ждать)))

В этом случае ты можешь более дешево проверять ESC при работе цикла))) Один раз считали, ESC не обнаружен, продолжили шуровать базы, разгрузку не вызывали, скорость работы не теряем)))

думать надо, думать)))

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 37 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 187
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет