我目前正在用Java编写的Android项目。 我有一个仪表板,可以查询云数据库中的数据并在图表上呈现数据。但数据必须在收到时处理。
我有4个AsyncTasks,在doInBackground覆盖方法同时处理接收到的数据(或者是应该)。这个过程非常缓慢,我试过究竟做线程的优先级做在Java中
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
在每个AsyncTask中。
然而,4个AsynkTasks似乎一切发生一前一后,是由于改变线程最高的优先级?当一个线程优先级被改变时,它是否会停止所有其他线程并继续执行,直到完成?
从上'Thread'的JavaDoc:“每个线程都有具有更高优先级的线程优先与执行线程的优先级。较低的优先级。“ – Thomas
即使更改优先级,除非他们是真正的小任务,他们应该仍然表现出一定程度的并行性。发布更多代码以查看其他地方是否存在某种错误。 – bracco23