Thread  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
bruno_kiau
HelloWorld

Membro desde: 17/03/2003 15:24:48
Mensagens: 10
Offline

Tenho uma dúvida...
Quando uma thread entra em um método sincronizado de um objeto e adquire a trava, se a thread chamar sleep() ela continuará com a trava para o objeto durante o tempo em que ela dorme ou o objeto é liberado durante esse tempo??
[WWW] [ICQ]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5983
Localização: São Paulo
Offline

Ela continua com o lock, porem outras threads para outros objetos poderao rodar.

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
duardor
Virtual Machine Man
[Avatar]

Membro desde: 04/12/2002 16:26:48
Mensagens: 552
Localização: BRAZIL
Offline

Continuando a duvida do bruno...
E se as outras threads (todas elas, vamos supor) estiverem esperando para obter o lock do objeto que tah com a thread dorminhoca?
O sistema vai "parar" eqto o lock estiver com a tread dormindo???

Eduardo Rodrigues
Belo Horizonte - MG
[Email] [MSN] [ICQ]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5983
Localização: São Paulo
Offline

Se voce tiver 5 threads, todas para o mesmo objeto, todas - 1 vao estar esperando enquanto uma delas estiver rodando. Como somente pode haver um lock por objeto, e levando em considecao que sleep() nao libera o lock, todas as outras do mesmo objeto estarao esprando ate a que estiver rodando terminar.

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team