| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Ruby: Общие вопросы > Взаимодействие с дочерними форками |
| Автор: enRai 22.6.2011, 11:36 |
| Здравствуйте. Пишу сервер (использую Eventmachine). Сервер открывает порт, ждет команд, при определенной команде запускает форк, в котором выполняется определенная задача продолжительное время. Загвоздка в том, что я не могу понять как наладить взаимодействие самого сервера и его форков (выполняющих задачи). Как пример: пользователь запустил задачу, через некоторое время хочет узнать о прогрессе. Нужно чтобы сервер обратился к форку, форк вернул серверу свое состояние, сервер передал это состояние клиенту. Думал сделать через базу данных, чтобы сервер записывал задачи в базу, а форк периодически проверял эти задачи. Но такой способ отпадает при необходимой интерактивности, как в примере (вопрос - сразу ответ). Читал про пайпы, но информация достаточно скудна, как-то коряво все получается в итоге, да и чтобы читать форку с потока, ему нужно постоянно останавливаться, слушать данные с ввода (может я не так понял, особо не углублялся из-за скудности информации) |