| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > как узнать что на сокет пришли данные? |
| Автор: Alone 1.8.2003, 10:15 |
| Народ, подскажите кто знает: Есть клиент на яве. Он посылает серверу запрос и ждет ответ. Это его обычный режим работы. Но возникает ситуация, когда сервер присылает сообщение для клиента. Как обработать такой вариант? Я так полагаю, необходимо реализовать процесс "прослушивания" сокета. Но он не должен считывать с него данные (?) Во фре есть такая замечательная вещь как kevent() & kqueue() Интересно, может подобные механизмы есть и на яве |
| Автор: DarkDS 1.8.2003, 11:26 |
| Хмм... А что если взять из сокета инпут стирим и проверять available()? |
| Автор: Angie 1.8.2003, 12:35 |
| Сокет TCP или UDP? Мне тоже пришлось столкнуться с такой проблемой. Один из выходов: ставь receive() и все. Т.е. без send(). Выходит, что клиент все время ожидает сообщения. А чтоб не висело -- все это счастье в отдельный процесс. |
| Автор: Alone 2.8.2003, 10:22 |
| Сокет tcp. Я вот тут посмотрел, есть метод ready() Может он спасет отца русской демократии... Надо будет протестить. НО! Если у кого еще какие полезные мысли есть - то плиз сюда. |
| Автор: Alone 2.8.2003, 10:24 |
| Да, и еще: Если не сложно, киньте пример как сделать отдельный процесс? Для этого надо набросать какой нить класс, который будет наследником какого нить Thread? А потом что? |
| Автор: DarkDS 2.8.2003, 10:55 |
| Делаешь наследником от тред... Переопределяешь метод run() так чтобы оттуда шла основная работа (пока он работает - работает тред... если нужно чтобы тред постоянно висел - можно бесконечный цыкл вставить а потом в основной программе делаешь thread.start(). Могу более подробный пример дать, если нужно |
| Автор: Alone 2.8.2003, 12:13 |
| если можно, в мыло. [email protected] |
| Автор: DarkDS 2.8.2003, 13:30 | ||||
| Ушло. Кстати... Сорри... Не правльно сказал - класс должен быть наследован от Runnable Пример:
. а запускать:
Более подробно - смотри в присланном файле |
| Автор: Alone 4.8.2003, 08:56 |
| м-дя... рамблер тупит... Мыла нет. давай на альтернативный ящик , ок? [email protected] |
| Автор: DarkDS 4.8.2003, 09:15 |
| Ушло-2 |