Java面试系列-线程相关(一)
实现多线程的方式 继承Thread类,重写run方法,调用start方法启动线程 实现Runnable接口,重写run方法,调用start方法启动线程 实现Callable接口,重写call方法,并用FutureTask包装,在new Thread中传入FutureTask,然后调用start方法启动线程 使用线程池 保证线程安全的方式 synchronized关键字实现的同步方法或者同步代码块 ReentrantLock等实现的锁机制 volatile关键字实现的变量线程安全 使用AtomicInteger等原子类 使用ConcurrentHashMap等线程安全容器 线程有哪些状态? 五个状态:初始化(New)、可运行(Runnable)、运行中(Running)、阻塞(Blocked)、死亡(Dead)。 线程状态图 线程池的7个参数 publicThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnitunit,BlockingQueue<Runnable>work...