Android-如何同时处理多个可运行对象

Android-如何同时处理多个可运行对象,第1张

概述我试图创建多个任务队列并同时执行,但延迟时间不同.基本上,起初我只有一个可运行对象privatefinalRunnablemyQueue=newRunnable(){publicvoidrun(){if(service!=null&&service.isRunning()&&service.queueEmpty()){queueTasks();}

我试图创建多个任务队列并同时执行,但延迟时间不同.基本上,起初我只有一个可运行的对象

private final Runnable myQueue = new Runnable() {public voID run() {    if (service != null && service.isRunning() && service.queueEmpty()) {        queueTasks();    }    // run again in period defined in preferences    new Handler().postDelayed(myQueue,getUpdatePeriod(prefs));}

};

private voID StartWExecute() {new Handler().post(myQueue);}

我想改进代码,以便有多个队列,并且所有队列同时开始执行,但是每个队列可能有不同的updatePeriod,具体取决于其中的任务.这样,我可以将任务分类到队列中,并手动控制更新速度.我该如何实现?

谢谢.

解决方法:

您需要使用一个MessageQueue:

1,声明一个处理程序
 处理程序mWorkerHandler;
2.创建一个Looper:

Thread t = new Thread() {            @OverrIDe            public voID run() {                Looper.prepare();                mWorkerHandler = new Handler() {                    @OverrIDe                    public voID handleMessage(Message msg) {                        Log.d(TAG, "handleMessage - what = " + msg.what);                    }                };                Looper.loop();            }        };        t.start();

3.现在您可以发送任何号码信息并根据信息内容执行 *** 作:

mWorkerHandler.sendEmptyMessageDelayed(1, 2000);mWorkerHandler.sendEmptyMessage(2);
总结

以上是内存溢出为你收集整理的Android-如何同时处理多个可运行对象全部内容,希望文章能够帮你解决Android-如何同时处理多个可运行对象所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1120775.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存