Vc deve torna-lo publico na classe que cria a instancia da classe  thread, 
passando para esta uma referencia para  hastable

veja se entende.
se não tento depois te enviar um exemplo.


private hastable myPublicHastable = new hastable();

public static void main ( String args[] ) {
 
        MyThreadClass t = new MyThreadClass( myPublicHastable );
        t.start();
}




class  MyThreadClass extends thread { 
        private hastable h;
 
        MyThreadClass( Hastable h ) {
                this.h = h;
        }

        public void Add( Object o, String key ) {
                this.h.Put( o, key )
        }


 
José Iram Abreu de Souza
Analista de Sistemas
Manhattan Business Technology
Rua Teófilo Otoni, 82 - 10º andar - Centro - RJ
CEP: 20091-070
Tel.: 55 21 2518-2000
Fax: 55 21 2263-2663
www.manhattan.inf.br




"Henrique" <[EMAIL PROTECTED]>
17/02/2003 12:18
Please respond to enterprise-list

 
        To:     <[EMAIL PROTECTED]>
        cc: 
        Subject:        [enterprise-list] Threads


    Pessoal, estou implementando uma solução em Java que
utiliza Threads, mas, me deparei com um problema ainda sem solução.

    Descrição, Simulação Problema:

        - existe uma classe principal, escutando numa porta qualquer
(socket) esperando requisições (Daemon). Para toda requisição a esta 
classe
principal, é levanta uma Thread que realiza uma determinada operação e é
destruída;

        - na classe principal, existe um objeto Hashtable público, sua
função é armazenar valores setados nas Threads que são levantadas. Dessa
forma, nas Threads de acordo com a lógica do algorítmo, posso executar ADD
ou REMOVE no Hashtable público.

        - o problema está exatamente em deixar esse Hashtable público, 
todas
as vezes que levanto uma nova Thread, o Hashtable é inicializado, não
consigo torná-lo público para as Threads.


    Já tentei utilizar o Hashtable como público para todas as Threads, já
tentei passá-lo por parâmetro(valor) para as Threads, já utilizei uma 
classe
SingleTone e nada. Não testei passando por parâmetro(referência).

    Deu pra entender meu problema?    Preciso tornar o Hashtable
inicializado na classe principal público para todas as Threads, observe 
que
essas Threads manipulam o Hash e são destruídas devendo o Hash permanecer
disponível com seu valor para as novas Threads que serão levantadas.


    Henrique



---------------------------------------------------------------------
Para cancelar a subscri袯, envie mensagem para: 
[EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: 
[EMAIL PROTECTED]






Responder a