trheads[resolvido]  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
j.silvestre
JavaChild
[Avatar]

Membro desde: 09/05/2010 10:42:22
Mensagens: 134
Localização: Curitiba
Offline

Pessoal

tenho um thread que chamo ela a cada 500 milisegundos, nesta thread estou chamando um método que fica esperando dados de um E/S . A Pergunta é se eu ficar preso neste método por mais
de 500 milissegundos a thread fica esperando ?? ou ela é chamada de volta a cada 500ms ?



sds


j.silvestre

This message was edited 1 time. Last update was at 12/09/2011 21:58:59


rapadura is sweet, but no soft.

8051 and ARM embedded system developer
eberson_oliveira
JavaGuru
[Avatar]

Membro desde: 16/01/2008 10:18:17
Mensagens: 206
Localização: Matão - SP
Offline

Olá!

Como assim "eu chamo ela a cada 500 milisegundos"?

Você tem uma thread e fica dando sleep de 500 milisegundos a cada ciclo do seu processo ou cria uma nova thread a cada 500 milisegundos?

Se você estiver usado o sleep não vai ter problema, pois enquanto ela estiver esperando pela entrada não vai chegar no trecho do sleep... agora se estiver criando uma thread nova toda vez, então ela vai ser chamada independente do tempo em que a primeira ficou esperando...

Espero que ajude.

[]s
Éberson

[Email] [MSN]
muehlner
Entusiasta Java
[Avatar]

Membro desde: 19/05/2011 14:16:18
Mensagens: 23
Offline

Pelo que sei de Threads se você coloca um synchronized ele funciona igual a uma "chave" que tranca a porta e nenhuma outra Thread pode ser executada enquanto essa não chegar ao fim

exemplo:



espero ter ajuda !
abraços
eberson_oliveira
JavaGuru
[Avatar]

Membro desde: 16/01/2008 10:18:17
Mensagens: 206
Localização: Matão - SP
Offline

muehlner wrote:Pelo que sei de Threads se você coloca um synchronized ele funciona igual a uma "chave" que tranca a porta e nenhuma outra Thread pode ser executada enquanto essa não chegar ao fim

exemplo:



espero ter ajuda !
abraços


Se ele estiver instanciando uma nova thread a cada ciclo esse bloco sincronizado não vai servir pra nada... pois as instâncias serão diferentes... e esse "lock" não vai ter nada útil...

Sincronizar um recurso compartilhado poderia ser uma solução, mas depende de como ele construiu o modelo dele...

Vamos aguardar uma resposta para pode indicar algo mais coerente com a sua realidade...

Atenciosamente,
Éberson

[Email] [MSN]
j.silvestre
JavaChild
[Avatar]

Membro desde: 09/05/2010 10:42:22
Mensagens: 134
Localização: Curitiba
Offline

Eberson escrveu:

"Você tem uma thread e fica dando sleep de 500 milisegundos a cada ciclo do seu processo ou cria uma nova thread a cada 500 milisegundos? "

Na verdade eu estava usando um timer que gerava um evento a cada 500ms , então acho que se meu metodo de repente demorar mais de 500ms ele vai gerar outro evento
antes de terminado a primeira execução. A solução de criar uma thread com sleep de 500ms resolve meu problema.





sds


j.silvestre


This message was edited 1 time. Last update was at 12/09/2011 21:58:35


rapadura is sweet, but no soft.

8051 and ARM embedded system developer
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team