Problemas com thread

PESSOAL

To percorrendo uma combobox conforme vou digitando , e por isso estou usando um thread , mas ta dando erro
vejam o codigo


ControladorImagem c = new ControladorImagem();
        ArrayList<Instituicao> item = c.carregaInstituicao();
        
        for(int i=0; i< item.size();i++){
            
            cbInstituicaoImagem.addItem(item.get(i));
            
        }
        final EventList inst = GlazedLists.eventList(Arrays.asList(item));
        
        
        SwingUtilities.invokeAndWait(new Runnable(){
            public void run(){
                AutoCompleteSupport.install(cbInstituicaoImagem,inst);
            }
        });
       

quando executa da o seguinte erro

Exception in thread "AWT-EventQueue-0" java.lang.Error: Cannot call invokeAndWait from the event dispatcher thread

se eu usar o invokeLater funciona , mas traz todos os items na mesma lista e minha combo comeca eem branco …

Alguem pode me ajudar ??

O problema é que você não está executando o código em outra Thread, e sim na da AWT.

E o comando InvokeAndWait só pode ser disparado de fora da Thread da AWT.

Como você fez para criar a sua segunda thread? Tem certeza que está certa?

Põe o código do local onde você dispara a Thread, e de como a Thread faz para evocar esse método aí, para a gente dar uma olhada.