powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / проблема со "спонсорным" класом в Remoting
7 сообщений из 7, страница 1 из 1
проблема со "спонсорным" класом в Remoting
    #33757098
sbkernel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Из книги Маклис С., Нефтел Дж., Уильяме К. Microsoft .NET Remoting.
Там есть пример обявления спонсора жизни удаленого обэкта (пример под VS2003 а я пользуюсь VS2005) , будто-бы делаю все правильно:

Клиентскую форму наследую от ISponsor
public partial class ClientForm : Form, ISponsor
{
private ILease ServerLease;
.........

Опредиляю метод
public TimeSpan Renewal(ILease lease)
{
return TimeSpan.FromMinutes(5);
}

И в событии старта формы делаю
private void ClientForm_Load(object sender, EventArgs e)
{
...............
ServerLease = (ILease)Chat.InitializeLifetimeService();
ServerLease.Register((ISponsor)this);
}

Прога работает класно до тех пор пока не заканчивается LeaseTime. Метод Renewal не запускается. И обращение
double t1 = ServerLease.CurrentLeaseTime.TotalSeconds;
вызывает исключение {"Requested Service not found"}
Что я делая неправельно
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33758774
Sasha Bilyck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уже пробовал и пример с МСДН2005:
там спонсорский клас наследуется еще и от MarshalByRefObject

class ClientSponsor : MarshalByRefObject, ISponsor
{
public TimeSpan Renewal(ILease lease)
{
return TimeSpan.FromMinutes(5);
}
}

Кто работал с "ремотингом" отзовитесь
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33759494
Jeepik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МОЖЕТ ЭТО ПОМОЖЕТ
Единственное свойство, которое разрешается изменять у объекта после определения его аренды, — CurrentLeaseTime. Оно возвращает оставшееся время аренды. Обновить аренду объекта могут:
• клиентское приложение (вызовом метода ILease.Renew);
• объект-спонсор.
Следующий код демонстрирует обновление аренды объекта из клиентского приложения:
RemoteType ob] - new Remotelype();
ILease lease = (ILease)RemotingServices.GetLifetimeService{ob]):
TimeSpan expireTime = lease.Renew(TimeSpan.FromSeconds{3Q});

ЭТО ИЗ КНИГИ
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33759955
Sasha Bilyck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeepikМОЖЕТ ЭТО ПОМОЖЕТ
Единственное свойство, которое разрешается изменять у объекта после определения его аренды, — CurrentLeaseTime. Оно возвращает оставшееся время аренды. Обновить аренду объекта могут:
• клиентское приложение (вызовом метода ILease.Renew);
• объект-спонсор.
Следующий код демонстрирует обновление аренды объекта из клиентского приложения:
RemoteType ob] - new Remotelype();
ILease lease = (ILease)RemotingServices.GetLifetimeService{ob]):
TimeSpan expireTime = lease.Renew(TimeSpan.FromSeconds{3Q});

ЭТО ИЗ КНИГИ

таким способом мы явно продливаем время жизни, а когда время само по сибе заканчивается и сервер сам должен опрашивать спонсоров. Но это почемуто не работает
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33759973
Sasha Bilyck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати книга Маклис С., Нефтел Дж., Уильяме К. Microsoft .NET Remoting.плохая: сначала куча теории и сразу же огромный пример.
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33760484
Sasha Bilyck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последний вопрос может кто знает: "спонсоры" должны работать в режиме клиентской активации, или в режиме серверной активации тоже
...
Рейтинг: 0 / 0
проблема со "спонсорным" класом в Remoting
    #33762169
Jeepik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если интересно то у меня ссылка есть посмотри может что найдешь для себя
http://ishodniki.ru/art/artshow.php?cat=1&id=514&show=net
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / проблема со "спонсорным" класом в Remoting
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]