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

Вниз

Закрытие сессии по 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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.021 c
3-5468
junior
2003-02-13 21:36
2003.03.03
NULL program pointer encountered? Почему возникает исключение?


1-5619
andrey_pst
2003-02-20 08:41
2003.03.03
Code Insight в D7


14-5808
Lord Warlock
2003-02-13 09:39
2003.03.03
...Я рыдал...!!!


8-5675
/-\|e}{
2002-11-05 08:17
2003.03.03
Есть у кого Swiftsoft Multimedia tools v 1.5-2.0


8-5668
Dark Simpson
2002-11-20 00:29
2003.03.03
Задачка, мастера!