Pergunta

Eu li no um post para o fórum Bater recentemente que

Iniciando tópicos daemon em um servidor Java EE é um grande não, não

Basicamente XMPPConnection Smack inicia um thread daemon para monitorar dados de entrada E outra para enviar dados de saída de / para o servidor jabber respectivamente. É razoável usar threads daemon para ouvir gravação / lê neste cenário?

Foi útil?

Solução

Sim, XMPPConnection cria dois tópicos - um para ouvir / leitura e uma para a escrita. Mas estes só ao vivo, enquanto a instância XMPPConnection, que eu suponho que não é para sempre.

"Iniciando tópicos daemon em um servidor Java EE é um grande não, não"

Você está escrevendo EJB compatível com especificação? Se assim for, então isso se aplica. A especificação diz não fazê-lo. EJB especificação 2.1:

"O enterprise bean não deve tentar para gerenciar threads. O enterprise bean não deve tentar iniciar, parar, suspender ou retomar um fio, ou para alterar a prioridade ou nome de um segmento. O enterprise bean não deve tentar para gerenciar grupos de rosca ".

Ou é apenas um webapp que acontece a ser executado em Tomcat? Se este for o caso, então eu não vejo qualquer problema fundamental. Sem fios, o seu cliente Bater seria incapaz de se comunicar com o servidor.

Outras dicas

Eu tenho usado Bater API apenas para conexões de cliente que são suportar programas sozinho. Primeiro você deve rever a escolha (ou efeito) de heroína API dentro de um contêiner J2EE.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top