ProgressDialog não mostrado quando AsyncTask.get () chamado [duplicate]

Possible Duplicate:
AsyncTask bloqueia a ameaça da interface do usuário e mostra a barra de progresso com atraso

Eu quero mostrar um progressDialog ao recuperar JSON de qualquer servidor. Então, eu usei o AsyncTask como uma solução (não tenho certeza de uma saída diferente).

Tudo está bem, o ProgressDialog funciona corretamente até eu chamar o método .get () usando a instância AsyncTask. Suponho que esteja bloqueando a interface do usuário de alguma forma. Aqui está o meu AsyncTask:

public class myAsync extends AsyncTask<String, String, List> {

    String message; // for dialog message
    ProgressDialog progress; 
    Intent myIntent;
    Context ctx;

    public myAsync(String message, Context ctx) {
        this.message = message;
        this.ctx = ctx;
        progress = new ProgressDialog(ctx);
    }

    @Override
    protected void onPreExecute() { 
        progress.setMessage(message);
        progress.setIndeterminate(true);
        progress.setCancelable(false);
        progress.show();    
    }

    @Override
    protected List doInBackground(String... params) {
        //returns any list after the task
        return anyList; 
    }

    @Override
    protected void onPostExecute(List result) {
        if(progress.isShowing())
            progress.dismiss();
    }
}

E aqui está o myActivity chamado AsyncTask:

myAsync asyncTask = new myAsync("Loading...", this);
asyncTask.execute("Any string", "Other string");
asyncTask.get(); // If I comment out this line, ProgressDialog works

pós executar, quando tentei registrar o resultado do doBackground e onPostExecute, não há problema. Mas se eu quiser começar com .get (), o resultado ProgressDialog não é mostrado ou mostrado em tão pouco tempo (talvez 0,2 segundos)

Qual é o problema

questionAnswers(8)

yourAnswerToTheQuestion