对于多线程的初步认识

首先,我们需要知道什么是程序,什么是进程,还有什么是线程。

所谓程序,从大范围来说,应该是指令集的一个集合。进程是计算机系统通过调用程序来做什么事情,一个程序就是一个进程。线程举个例子就是说一条两道公路,由一条线分开,你走你的我走我的,但由于线程是进程的一部分,线程又被称为轻量级进程。

一个进程要是一条路径执行下去,可以被称为单线程进程。要是有很多路径,就叫多线程。比如家里有客人来,家里招待客人就是多线程,母亲做饭,孩子端茶,父亲陪同。

我们写的一个程序中有 main()方法和GC方法。main()方法被称为主线程,在执行main()方法的同时,gc也在工作。即多线程

每个线程有独立的运行栈和程序计数器PC。

同步,也称并发, 是为了防止多个代理同时持有一份资源 ,例如电影院只剩最后一张电影票,但甲乙丙三人同时访问,当甲先拿走这张票,乙丙就拿到0和-1,这显然是不对的。所以说该线程不安全。所谓线程安全,是指用synchronized包装线程。即使一份资源只能由一个线程持有。当这份资源被一个线程持有后,其它线程只能等待。即线程安全。但要注意,过多的同步,就会容易发生死锁问题。即你不给我资源,我就不走,其他线程也无法访问该资源。

单例线程的创建模式:懒汉式,具体步骤如下程序演示:



你可能感兴趣的:(java相关基础知识)