Остановка параллельной задачи Java с муравьем

Я разрабатываю две программы Java, которые работают в отдельном VM's, которые имеют типичный сервер/связи с потребителями. Используя параллельные/последовательные задачи муравья я был в состоянии заставить муравья выполнять сервер и затем клиент. Я теперь хотел бы его так, чтобы, когда клиентский процесс остановился, муравей уничтожил сервер. Я видел сделанный с пользовательскими задачами Ant для определенных серверных приложений (как TomCat), какой-либо метод существует для того, чтобы сделать это с универсальными процессами Java?

10
задан Sandro 19 February 2010 в 20:47
поделиться

1 ответ

Поскольку вы разрабатываете серверное приложение, вы можете заставить его прослушивать команду "выключение". Затем вы можете попросить ant отправить ему команду выключения, когда клиент завершает работу, что-то вроде:

<parallel>
    <server .../>
    <sequential>
        <client ... />
        <!-- client has finished,  send stop command to server -->
    </sequential>
</parallel>

Другой вариант, который может сработать для вас, - запустить сервер внутри элемента демонов .

<parallel>
    <daemons>
        <server .../>
    </daemons>
    <sequential>
        <client ... />
    </sequential>
</parallel>

Это заставит сервер работать в потоке демона, что не помешает Ant от завершения. Когда муравей останавливается, все потоки демона, включая ваш сервер, будут остановлены.

9
ответ дан 4 December 2019 в 01:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: