2018-09-15

                                                                多线程

方法   (继承Thread     实现Runnable  )     实现Callable(JUC高并发领域)

描述:多线程无先后顺序   运行run只是普通方法,按顺序执行,start才是启动一个线程

1.继承Thread   必须创建代理对象才能启动start。

2.Runnable 是实现接口   共享同一份资源多个代理    存在并发(需要确保数据安全) 推荐使用,避免单继承的局限性

3.Callable(强大)  可以抛出异常  call方法有返回值

多线程并发  无法进行数据同步 确保数据安全解决方案

1.Sychronization 同步方法   确保每次进行调用的都是只有一个线程   (也可以直接定义方法)


2.使用ReentrantLock锁


3.线程池    

线程池里面每个线程空闲的时候才会继续去执行业务,否则就要处于等待状态

你可能感兴趣的:(2018-09-15)