我正在开发 android 上的群聊应用程序。
目前我在群聊屏幕上点击按钮显示参与者列表。我需要在参与者列表中显示每个参与者的离线/在线状态。
目前,我通过为每个参与者创建一个线程并向服务询问其状态来获取离线/在线状态。
所以有 n 个线程为 n 个参与者运行。
我想更改此设计/优化此代码,并在两者之间引入某种管理器或其他任何东西。
使用目前的方法,手机的功耗很高,我需要以某种方式降低功耗,即优化代码。
我应该使用哪种设计模式或技术来优化这个问题?
代码就像
while(all contacts)
{
AsyncTask.execute(new Runnable() {
@Override
public void run() {
//error handling
checkPresenceByContactId(contactId);
//error handling
}
}