2012-03-27 19 views
-1

私はAndroid SDKを使用してアプリケーションを開発しています。このアプリケーションでは、ActivityThreadを開始したときに問題に直面しています。新しいThreadAsyncTaskで始まりますが、ThreadAsyncTaskの実行が完了するまで待たなければなりません。スレッドとAsyncTaskの間の通信を実装する方法

スレッド内でAsyncTaskを開始することはできますか?そうであれば、どのように実装する必要がありますか? この種の仕事について、誰でも私の経験を共有することができます。事前

答えて

1

だけのスレッドがasynctask postExecute方法

new Thread(new Runnable(){ 
    @Override 
    public void run(){ 
     while(!someValue) { 
      try { 
       Thread.sleep(200); 
      } catch { 
       Log.i("LOG", "ERROR"); 
      } 
     } 
     Log.i("LOG", "Async Task Finished"); 
    } 
}).start(); 
+1

Aaarrghhにsettedされたいくつかの時間のために寝た後、以下のコードsomeValueの中でこのよう 再び変数をチェックすると言います!非同期タスクが終了したかどうかを検出するためのスリープループ!いいえ!やめろ! –

2
  1. おかげであなたは、メインスレッド以外のスレッドからAsyncTaskを作成するべきではありません。

  2. とにかく待つ必要がある場合は、なぜAsyncTaskを作成しますか?スレッド上で実行します。
関連する問題