标签: java android multithreading loops while-loop
我创建一个线程来处理一些队列数据。在线程内部有一个无限循环。当循环工作时,界面总是冻结。
我对此感到困惑,我已经创建了线程,但为什么它仍然冻结?
Thread queue = new Thread(new Runnable() { public void run() { while(true) { ... } } }); queue.start;
针对此问题的任何解决方案?
答案 0 :(得分:3)
它不仅仅是你的界面变慢,实际上你的手机也会因为你正在消耗(不必要地浪费)while循环中的所有处理能力。要获得更好的方法,请在线程中的while循环中使用Handler和/或AsyncTask或至少使用Thread.sleep。
Thread.sleep