Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > jsvc thread stop демон


Автор: wtbh 28.3.2012, 11:25
Добрый день
Есть 3 класса
Первй класс вызывает два класса extends Thread.
В первом классе есть то что нужно для демона.
Код

   public void init(String[] args) {
        System.out.println("init ... ");
    }

    public void start() {
   ......
        u.smpp = new smppCls();
        u.smpp.startSession();
        u.queue = new LookQueue(u.timeOut);
        u.queue.start();        
        u.lookStat = new lookStatus(u.timeOutStatus);
        u.lookStat.start();
        System.out.println("start ... ");
.....
    }

    public void stop() {
        System.out.println("stop ///////////");      
        u.queue.interrupt();
        try {
            u.queue.join();
        } catch (InterruptedException ex) {
            System.out.println("join " + ex.getMessage());
        }
        System.out.println("stop 222222222222222222222222");
        u.smpp.stopSession();   
        u.toLog("LogOut correct", "sys");
        System.out.println("stop +++++++++++++++++");    }

    public void destroy() {
           .......... 
    }


в поточных классах
Код

while(!interrupted()) {
.....
Thread.sleep(delay);


Запуск делаю через jsvc. Всё запускается красиво.
Потом через jsvc делаю стоп, отробатывает метод stop() и тут возникает проблема 
[root@gate smssrv]# [root@gate log]# cat jsvc.log
Java HotSpot™ 64-Bit Server VM warning: Can't detect initial thread stack location - find_vma failed
init ...
start ...
stop ///////////
28/03/2012 12:22:50 29033 jsvc.exec error: Service did not exit cleanly
потоки просто умирают и не завершаются корректно.
Если делаю просто kill pid то всё красиво завершается всё последовательно и корректно.

Автор: wtbh 28.3.2012, 12:17
вопрос решен.
проблема заключается не java а в стартовых сриптах юникса.
всем спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)