AsyncTask内部也是Handler机制来完成的,只不过Android提供了线程池来执行相应的任务,因为线程池的大小问题,所以AsyncTask只应该用来执行耗时时间较短的任务。
比如Http请求,大规模的下载和数据库的更改不适用于AsyncTask,因为会导致线程池堵塞,没有线程来执行其他的任务,导致的情形是会发生AsyncTask根本执行不了的问题。
因为AsyncTask实际上是一个线程池,最大只支持个并发。如果有线程长时间占用,且没有空闲,则其他线程只能处于等待状态,会造成阻塞
AsyncTask基本面试问题
最新推荐文章于 2024-09-08 10:13:06 发布