![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程和并发
不划水的易水寒
这个作者很懒,什么都没留下…
展开
-
Java程序员必会的多线程和并发(一)
一.首先来说下进程和线程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个基本单位,一个进程下可以有多个线程运行。 线程是进程的一个实体,是CPU调度和分派的基本单位,是比进程更小的能独立运行的基本单位,线程自己基本上不拥有系统资源,只有必要的资源(程序计数器,一组寄存器和栈),但是他可以与同属于一个进程的其他线程共同享有进程所拥有的全部资源。...原创 2018-08-13 22:18:41 · 389 阅读 · 0 评论 -
多线程和并发(五)volatile关键字
一,什么是volatile? 很多人都听说过volatile,估计用过的人远没有听过的人多。volatile和synchronized(https://mp.csdn.net/postedit/81675479)一样,都是Java用来实现同步机制的一种手段,当变量声明为volatile时,代表这个变量是共享的,当前线程对它进行的操作都会立即对其它线程可见,也就是保证了可见性,既然提到了可见性,就...原创 2018-08-18 23:51:07 · 131 阅读 · 0 评论 -
设计模式(一)单例模式
一.什么是单例模式 有过项目开发经验的大佬肯定都知道也用过这个广为程序猿所知的设计模式,在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例,即一个类只有一个对象实例。在实现单例模式的时候要记住,由于要保证实例只有一个,自己来完成实例的创建,所以要提供无参构造方法(否则系统会提供默认的构造方法,默认是public,会导致其他类可以通过默认构造...原创 2018-08-19 00:29:56 · 136 阅读 · 0 评论 -
多线程和并发(四)使用newSingleThreadExecutor让线程按顺序执行
newSingleThreadExecutor是用来创建线程池(关于线程池以后专门介绍)的一种方法,表示创建一个单线程的线程池,这种情况下只有一个线程在工作,如果这个线程由于各种原因结束,则会创建一个新的线程来代替他。当任务提交时会按顺序插入任务队列,执行时从队列头部取出任务执行,保证了所有任务的执行顺序按照提交顺序来执行 接下来做个简单的测试(后期讲解线程池时再详细介绍),首先创建三个线程任务...原创 2018-08-16 21:28:26 · 7639 阅读 · 2 评论 -
String,StringBuffer,StringBuilder拼接速度的测试
Java面试汇总中老是会有String,StringBuffer,StringBuilder的区别这种面试题,统一的回答是: 三者连接速度由快到慢:StringBuilder,StringBuffer,String StringBuilder非线程安全,StringBuffer线程安全 String是字符串常量,二StringBuilder和StringBuffer为字符串变量,也就是说S...原创 2018-08-16 22:51:47 · 766 阅读 · 0 评论