一. 关于 Java 的多线程
务必参考这篇详细的文章:Java 多线程
二 . Android中的多线程
Android官方声明:在多线程编程时有两大原则:
不要阻塞UI线程(即主线程):单线程会导致主线程阻塞,然后出现ANR错误:主线程被阻塞超过5s则会出现错误。
不要在UI线程之外更新UI组件。
问题1解决方法:将耗时任务放在工作线程中进行
对应原则:不要阻塞UI线程(即主线程),即当我们有耗时的任务,如果在UI线程中执行,那就会阻塞UI线程了,必须要抛到工作线程中去执行。
问题2解决方法:将更新UI组件放在主线程中进行
对应原则:不要在UI线程之外访问UI组件,即更新UI组件时,一定得在UI线程里执行,故需要在工作线程中执行的任务结果返回到UI线程中去更新组件。