【问题标题】:Executing two AsyncTask parallely并行执行两个 AsyncTask
【发布时间】:2013-06-25 09:05:00
【问题描述】:

我想并行执行两个 AsyncTask。基本上我想做当我点击一个按钮时你运行两个 AsyncTask 但同时不是这样......在第一部分单击第一个到第二个按顺序排列!我会理解是否可以通过单击按钮来启动它们!

我在下面写了我用来放她走的代码:

public void onClick(View arg0){
    switch(arg0.getId()) {
        case R.id.btn_down:
            if(isOnline() == true){
                //
                // new ShowDialogAsyncTask().execute();
                new AsynTask2().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,null);
                new ShowDialogAsyncTask().executeOnExecutor(AsyncTask.SERIAL_EXECUTOR,null);



            }
            else{
                Toast.makeText(this,"Connettiti a Internet",Toast.LENGTH_SHORT).show();
            }

            break;
    }
}

【问题讨论】:

标签: java android crash android-asynctask helper


【解决方案1】:

This 是关于如何并行运行多个 AsyncTask() 的非常有用的讨论。

此外,它还有一个example 演示相同。

希望这会有所帮助.... :)

【讨论】:

    【解决方案2】:

    第一个异步任务的 onPostExecute 可以启动第二个

     protected void onPostExecute(Long result) {
         new AsynTask2().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,null);
     }
    

    【讨论】:

    • 这实际上是你可以做到的,但 .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,null) 不是必需的。
    • 等待不确定问题的意图,他需要并行还是顺序。我不太明白
    • @blganesh101 以您自己编写的方式...第二个 AsyncTask 在 1 AsyncTask 结束时执行,对吗?我希望他们并行执行:也就是说,当第一部分也是第二部分时
    • 这允许在所有具有 API 4+ (Android 1.6+) 的 android 版本上并行执行:@TargetApi(Build.VERSION_CODES.HONEYCOMB) // API 11 void startMyTask(AsyncTask asyncTask) { if(Build .VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) asyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, params);否则 asyncTask.execute(params); }
    • 什么是参数?我这样做: if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB) { new ShowDialogAsyncTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, null);新的 AsynTask2().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,null); } else { 新 AsynTask2().execute();新的 ShowDialogAsyncTask().execute(); }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多