Как из вне убить поток на сервере?
Допустим, остался поток на сервере из-зи того, что у клиента комп взорвался
Как из вне(по локалке) подсоединиться к серверу и убить поток[типа админ]
Использую компоненту ServerSocket и ClientSocket.
Клиент-сервер по примеру взят с:
[http://www.sources.ru/builder/network/threaded_socket_application.shtml])
[email]zitrol@pisem.net[/email]
Я такое раньше делал - полезная штука.
Есть приложение, работающее на той-же машине, что и серверная часть
А если приложение[админ] работает на другой машине(не на той что сервер?)/ Как тогда?
Вообщем гм.. не совсем понятно какими компонентами это делать...
Что почитать?
А не осталось исходников?
А то я только начал С изучать, а уже грузят такими задачами.
А если приложение[админ] работает на другой машине(не на той что сервер?)/ Как тогда?
Вообщем гм.. не совсем понятно какими компонентами это делать...
Что почитать?
А не осталось исходников?
А то я только начал С изучать, а уже грузят такими задачами.
Если админ на другой машине, то приложение-контроллер должно обеспечивать связь с ним (предоставлять (по сети) список активных потоков, принимать по сети команды управления/завершения потоками)
Ты с WinAPI дружишь? (или на чем раньши писал?)
------- хотя подожди, что-то я вчера под пивными парами слишком круто загнул насчет внешней программы-контроллера, тут она ни к чему.
Организуй в серверной части еще один сокет для обслуживания команд администратора. Храни/передавай список дескрипторов открытых потоков/сокетов и гаси их при поступлении от админа такой команды.
Ты с WinAPI дружишь? (или на чем раньши писал?)
Да я вообще не писал раньше под винды ничего серьезного.
Я только начал изучать ++, раньше на сях писал чуть-чуть(в универе). Курю книжки сейчас... А делать-то все равно надо.
------- хотя подожди, что-то я вчера под пивными парами слишком круто загнул насчет внешней программы-контроллера, тут она ни к чему.
Организуй в серверной части еще один сокет для обслуживания команд администратора. Храни/передавай список дескрипторов открытых потоков/сокетов и гаси их при поступлении от админа такой команды.
Как это сделать? Какими классами/компонентами?
Что почитать про это?
Я только начал изучать ++, раньше на сях писал чуть-чуть(в универе). Курю книжки сейчас... А делать-то все равно надо.
Как это сделать? Какими классами/компонентами?
Что почитать про это?
1) делай список активных потоков
2) делай обработчик команд администратора на сервере
... извини, просто не знаю, что тебе не ясно :-/
или
кинь сюда исходники, если на CB5 или VC++5/6 или Delphi5/6 [man@kiev.vectis.ru] - посмотрю что у тебя готово
Я только начал изучать ++, раньше на сях писал чуть-чуть(в универе). Курю книжки сейчас... А делать-то все равно надо.
Как это сделать? Какими классами/компонентами?
Что почитать про это?
А в чем собственно проблема отправляешь широковещательный запрос в сетку, ну или по айпи те то впроде как активен, если все живы все ок а если не все то тот кто не отвечвет, то он мертв сносим процесс, пусть программа это делает в автономном режими..(раз в 5 пять минут к примеру.. )
А в чем собственно проблема отправляешь широковещательный запрос в сетку, ну или по айпи те то впроде как активен, если все живы все ок а если не все то тот кто не отвечвет, то он мертв сносим процесс, пусть программа это делает в автономном режими..(раз в 5 пять минут к примеру.. )
Так конечно правильнее, но задание другое.
Ну, и, наверное, админам тоже кушать хотса...
Так конечно правильнее, но задание другое.
Ну, и, наверное, админам тоже кушать хотса...
Вот русская душа.. :))
Ну сделай чтобы сервер был еще и клиентом, и слушал, 6122 порт, и если туда придет clear то чистил, по той технологии что описано выше...
Хотя не пойму зачем усложнять себе жизнь если можно автоматизировать, а у админо еще много дел найдтся..