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

Вниз

Закрытие сессии по IdleTime   Найти похожие ветки 

 
boa   (2003-02-12 08:55) [0]

Проблемма: Если клиент N-ное время не работает с приложением то сервер по истечению IdleTime закрывает сессию. Если после закрытия сессии закрывать приложение, то естественно сыпется куча ошибок.
Требуется: Нужно автоматически закрывать приложение перед тем как отработает IdleTime.
Вопрос: Как узнать время последнего обращения клиента к серверу (IdleTime естественно известен)? Или кто подскажет как вообще решается эта проблемма (ни разу не встречал вопрос по этой теме, хотя он меня давно уже интересует)
Info: Для работы с базой использую DAO. Смотрел сырцы, так и не нашел за что зацепиться.
PS: HOOKи не предлагать, т.к. это не есть обращение к базе данных.


 
boa   (2003-02-12 08:57) [1]

Вообще-то ставил галочку на "Oracle", но почему-то в заголовке не высветилось!


 
jocko   (2003-02-12 09:56) [2]

закрывать не надо, надо переконнектиться, (такой вопрос с АДО недавно обсуждался) похоже вариант один - ловить код ошибки от провайдера, каким бы он не был (провайдер), и восстанавливать содедиение, сервер не сообщает клиенту, что он его выгрузил (геморой одним словом).


 
boa   (2003-02-12 12:43) [3]

А зачем мне переконнекчиваться если юзер не работает.?! Мне как раз нужно корректро освободить ресурс.


 
jocko   (2003-02-12 13:34) [4]

из опыта: (MS SQL) при сильной загрузке сервера, этот промежуток может быть очень небольшим, т.е пользователь задумался... и отвалился - лучше переконнектиться, можно молча, можно с диалогом,
В любом случае, раньше чем пошлешь запрос, точнее получишь ответ, о том что отвалился не узнаешь

Хотя может я не прав АУ!!! может все-таки есть варианты

и еще
>Мне как раз нужно корректро освободить ресурс
так ведь никто вроде и не занят


 
boa   (2003-02-12 15:37) [5]

Проблеммы с сильной заргузкой сервера у нас нет.
Я знаю, что у узера через 30 минут после последнего обращения к базе коннекта не будет.
На счет освобождения ресурса я неправильно выразился.
Ресурс на сервере и так (через 30 мин.) освободится а вот дальнейшая работа приложения вызывает сочуствие. И вообще зачем программе висеть в состоянии ожидания чего-то такое продолжительное время? Если юзер забыл закрыть прогу, то хотелось бы сделать это за него программно.




 
jocko   (2003-02-12 15:52) [6]

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

хотя вообще-то дикость, сам не знаю зачем написал


 
boa   (2003-02-12 16:35) [7]

Остается одно - делать HOOK на клаву/мышь и выполнять левый запрос к базе (или даже проверку на соединение) и от этого времени вести отсчет. Тоже дикость, но пока альтернотивы не вижу.
СПАСИБО! что откликнулся и не оставил меня в полном одиночестве (хотя может кто-нибудь еще и выскажет свое мнение).



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

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

Наверх





Память: 0.46 MB
Время: 0.009 c
4-5915
UNLoader
2003-01-13 17:25
2003.03.03
Сервис


8-5664
Влад2
2002-11-19 14:45
2003.03.03
Вопрос по элементарной(?) графике


9-5362
greenrul
2002-09-24 18:51
2003.03.03
Player:TPlayer - не работает....


1-5532
Delphi5.01
2003-02-17 14:55
2003.03.03
Button on PaintBox


1-5535
OlegM
2003-02-21 12:13
2003.03.03
Как отловить клик на titlebar e StringGrid a





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