Marcus, Existem basicamente duas possibilidades para inicializar um thread dentro de um Servlet:
--- 1: declarar, instanciar e iniciar a thread dentro do doGet(doPost, service), isto pode trazer alguns problemas, inclusive com a morte da thread, pois a partir do término da execução do método o objeto thread esta disponivel para o garbage Collector ( problemas a vista ) public void doGet(...) { Thread a = new Thread(); a.start(); } --- 2: declarar, como uma variavel do Servlet a thread... Instanciar e iniciar a thread a seu gosto... como o servlet é um unico objeto, sendo que seus metodos são executados em threads conforme a requisição, nunca a thread ficara disponivel ao garbage collector, assim ficamos tranquilo quanto a sua vida private Thread a = null; public void doGet(...){ if ( a == null){ a = new Thread(); a.start(); } } --- Acho que é isso, espero ter esclarecido... Quanto a orientação a serviços, simplificando um pouco, é fazermos com que nosso objeto, possa ser iniciado, parado, configurado, a qualquer momento como um serviço de fax... Abraços, Alessandro. ----- Original Message ----- From: "Marcus David Bronstein" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, October 23, 2001 10:53 AM Subject: Re: [java-list] Iniciar aplicativo a partir de outro. > Alexandro, > > Muito obrigado pela sua resposta, contudo ainda tenho alguns pontos a > esclarecer/desenvolver: > > 1- No que concerne a Servelet = Como a Servlet tem um vida limitada, isto é, > deve morrer(sic) após executar alguns comandos, caso contrário o servidor > web vai matá-la(sic) com timeout. Então fica a dúvida, todos os processos > iniciador por ela vão morrer tb ??? Meu objetivo é exatamente iniciar um > servidor deamon pela servlet > > > 2- Explique um pouco mais sobre a sua concepção de orientação a serviços > para auferir se tenho o mesmo conceito em mente... > > Atenciosamente, > > Marcus David Bronstein > > > > ----- Original Message ----- > From: "Alessandro Romero" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Monday, October 22, 2001 2:05 PM > Subject: Re: [java-list] Iniciar aplicativo a partir de outro. > > > > Marcus, > > > > Para iniciar um programa na mesma VM e deixá-lo rodando, talvez > uma > > Thread(não sendo do tipo daemon) que no "run" rode seu "main", pode ser > uma > > solução... > > > > Mas atenção esta solução pode continuar trazendo o problema que > voce > > comentou em seu primeiro email: > > "mais tem um problema, quando o primeiro aplicativo (o que fez a > > chamada) termina o outro também. " > > Isto pode acontecer por n motivos, mas o mais direto é o término > do > > primeiro programa com um System.exit(x)... > > > > Para um servlet iniciar um servidor de chat, a execução do main > numa > > nova thread pode atender, desde que o servidor nunca execute um > > System.exit(0) ou efetue um throw de uma Exception no main... Porque estas > > atitudes poderiam derrubar o Application Server, dependendo de qual esta > > sendo usado... > > > > Espero ter ajudado... > > > > Comentario: Uma abordagem interessante é orientar nossos > aplicativos > > a serviços( estamos entrando na "era de serviços" ), se quiser mais > detalhes > > sobre isso, estou a disposição... > > > > Abraços, > > Alessandro. > > > > ----- Original Message ----- > > From: "Marcus David Bronstein" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Monday, October 22, 2001 10:13 AM > > Subject: Re: [java-list] Iniciar aplicativo a partir de outro. > > > > > > > > > > > > > Alessandro, > > > > > > Usar a classe Runtime não serve pois como vou ter que usar comandos > > > específicos da plataforma, o que eu desejo é invocar o programa > > diretamente > > > na VM e deixar ele rodando.... > > > > > > Atenciosamente, > > > > > > Marcus David Bronstein > > > > > > > > > > ----- Original Message ----- > > > > From: "Alessandro Romero" <[EMAIL PROTECTED]> > > > > To: <[EMAIL PROTECTED]> > > > > Sent: Thursday, October 18, 2001 5:59 PM > > > > Subject: Re: [java-list] Iniciar aplicativo a partir de outro. > > > > > > > > > > > > > Marcus, > > > > > > > > > > Isto pode ser feito através da classe Runtime... Veja o > > javadoc > > > > > desta classe o método "exec"... > > > > > > > > > > Abraços, > > > > > Alessandro. > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > From: "Marcus David Bronstein" <[EMAIL PROTECTED]> > > > > > To: <[EMAIL PROTECTED]> > > > > > Sent: Thursday, October 18, 2001 2:53 PM > > > > > Subject: Re: [java-list] Iniciar aplicativo a partir de outro. > > > > > > > > > > > > > > > > Pessoal, > > > > > > > > > > > > Gostaria de saber como iniciar um outro processo(aplicativo) na VM > > > > apartir > > > > > > de um que já esta ativo. > > > > > > Detalhe: Isso eu já fiz através do classLoader chamando o método > > main > > > do > > > > > > aplicativo mais tem um problema, quando o primeiro aplicativo (o > que > > > fez > > > > a > > > > > > chamada) termina o outro também. Preciso que mesmo após o término > do > > > > > > primeiro o segundo fique ativo. > > > > > > Um exemplo seria uma servelet que iniciaria um servidor de chat. > > > > > > > > > > > > Desde já agradeço, > > > > > > Marcus David Bronstein > > > > > > > > > > > > > > > > > > ------------------------------ LISTA > > > > SOUJAVA ---------------------------- > > > > > > http://www.soujava.org.br - Sociedade de Usuários Java da > > Sucesu-SP > > > > > > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > > > > > > regras da lista: http://www.soujava.org.br/regras.htm > > > > > > para sair da lista: envie email para > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------ LISTA > > > SOUJAVA ---------------------------- > > > > > http://www.soujava.org.br - Sociedade de Usuários Java da > Sucesu-SP > > > > > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > > > > > regras da lista: http://www.soujava.org.br/regras.htm > > > > > para sair da lista: envie email para > > > [EMAIL PROTECTED] > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > > > > > > > > > > > > > ------------------------------ LISTA > SOUJAVA ---------------------------- > > > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > > > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > > > regras da lista: http://www.soujava.org.br/regras.htm > > > para sair da lista: envie email para > [EMAIL PROTECTED] > > > > ------------------------------------------------------------------------- > > > > > > > > > > > > ------------------------------ LISTA SOUJAVA ---------------------------- > > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > > regras da lista: http://www.soujava.org.br/regras.htm > > para sair da lista: envie email para [EMAIL PROTECTED] > > ------------------------------------------------------------------------- > > > > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- > > ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------