Thread, gauge e conexão

Oi pessoal,

estou com uma dúvida que esta me deixando louco… :lol:
Estou fazendo um programa que busca uns dados da internet, trata esses dados e mostra para o usuário. Enquando estou fazendo a conexão estou tentando colocar uma barra de progressão(gauge) para não ficar parecendo que o sistema travo. Estou usando thread para a gauge e a conexão também em thread.
Porém quando eu coloco pra rodar a porcaria age como se não tivesse a gauge pra mostrar. Eu gostaria que a gauge aparecesse e so saisse quando recebesse um true da minha classe conexão.
Em baixo esta meu código se alguém puder me mostrar onde esta o erro eu agradeço e se tiverem um exemplo também me ajuda bastante.

[code]import javax.microedition.midlet.;
import javax.microedition.lcdui.
;

public class ExeCon extends MIDlet implements CommandListener, Runnable {
Display tela;
Form frmApres, frmEspera, frmResposta;
Apresentacao apresenta;
Resposta resposta;
String strUrl;
Gauge gauge;
Thread thrEspera;
public ExeCon(){
tela = Display.getDisplay(this);

	//Tela de Apresentação
	apresenta = new Apresentacao();
	frmApres = apresenta.getForm();
	frmApres.setCommandListener(this);

	//Tela de resposta
    resposta = new Resposta();
    frmResposta = resposta.getFormInicial();
    frmResposta.setCommandListener(this);

	//Tela de Espera
	frmEspera = new Form("Aguarde...");
	gauge = new Gauge("", false, 100, 0);
	frmEspera.append(gauge);
}
public void startApp(){
	tela.setCurrent(frmApres);
}
public void pauseApp(){}
public void destroyApp(boolean unconditional){}
public void commandAction(Command c, Displayable s){
	if (c == apresenta.sair || c == busca.sairbusca){
	   destroyApp(false);
	   notifyDestroyed();
	} else if (c == apresenta.seguir){

	   //Mostra a tela de espera
	   tela.setCurrent(frmEspera);
	   thrEspera =new Thread(this);
	   thrEspera.start();
	   strUrl = "http://localhost:8080/raimyson/j2me.jsp";

	   //Classe de conexão extends Thread
	   Conexao conex = new Conexao();
	   conex.setUrl(strUrl);
	   conex.start();

	   //Fica aguardando resposta positiva do servidor
	   while (!conex.getSaida()){
		  try{Thread.currentThread().sleep(500);}catch(InterruptedException err){}
	   }

	   //Mostra a resposta tratada
	   resposta.setResposta(conex.getConexao());
	   frmResposta = resposta.getForm();
	   tela.setCurrent(frmResposta);
	}  
}

//Faz o incremento do gauge
public void run() {
  for (int cont =1;cont <=100;cont++) {
	try { Thread.sleep(30); }catch (Exception e) { }
	gauge.setValue(cont);
  }
}

}[/code]
Agradeço desde já a ajuda.