Java.lang.ThreadLocal

4 respostas
ricardo.longa

Pessoal, tenho a seguinte dúvida:

Suponhamos que tenho uma classe singleton responsável por criar conexões com banco de dados e realizar operações de CRUD em uma aplicação WEB. Atualmente utilizo threadlocal para armazenar as sessões do hibernate, porém, será que pode acontecer de dois ou mais usuários tentarem utilizar a classe no mesmo exato momento e as informações se perderem?

Outra questão que pode estar relacionada a dúvida de cima, quando duas threads vão executar um método, é possível que a primeira thread pare o processamento no meio do método para que a segunda thread comece a execução?

[]'s

4 Respostas

K

Esse foi um post meu sobre uma dúvida de hibernate e ThreadLocal, http://www.guj.com.br/posts/list/112393.java
veja a resposta do ricardolecheta

[]´s!

ricardo.longa

kubanacan:
Esse foi um post meu sobre uma dúvida de hibernate e ThreadLocal, http://www.guj.com.br/posts/list/112393.java
veja a resposta do ricardolecheta

[]´s!

Obrigado pelo dica.

[]'s.

gianisegatto

Para sua pergunta acho que não, principalmente se você usou sincronized no seu singleton.
Para segunda pergunta pode ser possivel, ninguém sabe o que pode acontecer com uma thread…

ricardo.longa

gianisegatto:
Para sua pergunta acho que não, principalmente se você usou sincronized no seu singleton.
Para segunda pergunta pode ser possivel, ninguém sabe o que pode acontecer com uma thread…

Então brother, na primeira questão estou usando threadlocal que armazena as sessões do hibernate, então a classe é singleton porém a informação que está na threadlocal está disponível somente para o autor da solicitação. Não estou usando o método sincronizado.

Estou certo?

Criado 29 de abril de 2009
Ultima resposta 29 de abr. de 2009
Respostas 4
Participantes 3