线程机制:java中的线程,为了提高运行效率,当一个线程在不断的访问一个变量,线程会使用一个私有空间存储这个变量,以后都会访问这个私有空间的变量;
为了是一个变量被所有线程共享,可以使用volatile关键字修饰这个变量;
volatile关键字 代表易变变量
volatile专门修饰被不同线程访问和修改的变量,让线程访问这个变量都从变量原地址访问;
private volatile String commonParams = "params";
一、AsyncTask源码分析
AsyncTask内部是使用Handler和线程池来处理异步任务的,但是使用的这个线程池有个弊端,就是如果添加多个任务Runnable(执行多个任务),是串行进行,而不是并行;
二、Timer源码分析
Timer执行多个Runnable也是串行,不是并行;Timer对象创建时,在其构造方法中会创建一个任务队列和一个Thread,且这个Thread直接start,然后通过一个循环从任务队列一个接一个的执行;