企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 11.1 主线程和子线程 主线程是指进程所拥有的线程,在Java中默认情况下一个进程只有一个线程,这个线程就是主线程。**主线程主要处理界面交互相关的逻辑**,因为用户随时会和界面发生交互,因此主线程在任何时候都必须有较高的响应速度,否则就会产生一种界面卡顿的感觉。**为了保持较高的响应速度,这就要求主线程中不能执行耗时的任务,这个时候子线程就派上用场了。子线程也叫工作线程,除了主线程以外的线程都是子线程**。 Android沿用了Java的线程模型,其中的线程也分为主线程和子线程,其中**主线程也叫UI线程。主线程的作用是运行四大组件以及处理它们和用户的交互,而子线程的作用则是执行耗时任务,比如网络请求、I/O操作等**。 从Android 3.0开始系统要求网络访问必须在子线程中进行,否则网络访问将会失败并抛出`NetworkOnMainThreadException`这个异常,这样做是为了避免主线程由于被耗时操作所阻塞从而出现ANR现象。