摘要: 一、线程的三大特性 原子性、可见性、有序性 1)原子性,即一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。原子性其实就是保证数据一致、线程安全一部分。 2)可见性,即当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值。 3)有序性 阅读全文
posted @ 2019-03-13 11:34 蜗牛丶sky 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 一、多线程之间如何实现通讯 1)什么是多线程之间通讯 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 2)如何通讯 wait()、notify()、notifyAll()是三个定义在Object类里的方法,可以用来控制线程的状态。这三个方法最终调用的都是jvm级的native 阅读全文
posted @ 2019-03-13 11:01 蜗牛丶sky 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 1)CyclicBarrier一个同步辅助类,允许一组线程相互等待,直到这组线程都到达某个公共屏障点。该barrier在释放等待线程后可以重用,因此称为循环的barrier 2)CountDownLatchCountDownLatch和CyclicBarrier有点类似,但是还是有些区别的。Coun 阅读全文
posted @ 2019-03-13 10:43 蜗牛丶sky 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 一、计算分页工具类 阅读全文
posted @ 2019-03-13 10:25 蜗牛丶sky 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 一、什么是线程安全问题 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 二、如何解决线程安全问题 1)如何解决多线程之间线程安全问题? 使用多线程之间同步或使用锁(lock)。 2)为什么使用线程同步或使用 阅读全文
posted @ 2019-03-12 16:27 蜗牛丶sky 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 一、线程和进程 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。 进程是所有线程的集合,每一个线程是进程中的一条执行路径。 二、为什么使用多线程,哪些场景下使用 多线程的好处是提高程序的效率。 主要能体现到多线程提高程序效率。如:迅雷多线程下载、分批发送短信等。。。。 三、多线程创建 阅读全文
posted @ 2019-03-12 15:56 蜗牛丶sky 阅读(175) 评论(0) 推荐(0) 编辑