JAVA中虚拟机(JVM)中多线程解析,以及多线程的好处与弊端

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_42947972/article/details/102669728

多线程的好处与弊端

什么是多线程?

线程:就是进程中一个负责程序执行的控制单元(执行路径)

一个线程中可以多执行路径,称之为多线程

一个进程中至少要有一个线程

开启多个线程是为了同时运行多部门代码
(例如:我们打开qq的同时,听音乐,以及玩游戏等)

每一个线程都有自己的内容,这个内容可以称为多线程要执行的任务
.
.
.
.
.

JAVA中虚拟机(JVM)中多线程解析

在Java中,JVM(虚拟机)启动时就启动了多个线程,至少有两个线程可以分析的出来

     1.执行main函数的线程
            该线程的任务代码都定义在main函数中
     2.负责垃圾回收的线程

我们都自动代码mian函数开始依次向下执行的…
但是这段代码确不会…

例子:

class Demo extends Object
{
    public void finalize()
    {
        System.out.println("demo ok");
    }
}
public class day12_09 {
    public static void main(String[] args)
    {
        new Demo();
        new Demo();
        new Demo();
        System.gc();
        System.out.println("Hello World");
    }
}

执行多次的结果:

在这里插入图片描述
在这里插入图片描述
这里我们调用了继承了Object类,调用了它的finalize()以及System.gc()的方法
告诉jvm执行垃圾回收机制,回收堆里面的垃圾(这里要记住的时,我们只是负责告诉它而已,至于它什么时候执行我们不知道)
所以就出现了上面的情况了…

这也能侧面证明我们上面的那个论点了
.
.
.
.

多线程的好处与弊端

多线程的好处: 解决了部分同时运行的问题
(就是我们可以一边听歌,一边运行360,一边运行qq,微信等)

多线程的弊端: 线程太多会导致效率的降低
(就是我们开了太多的软件,导致我们的cpu要执行的切换就多了,会导致我们电脑变卡)

其它应用程序的执行都是cpu在做着快速的切换完成,这个切换是随机的
如果应用太多,它的速度就变慢了.

猜你喜欢

转载自blog.csdn.net/weixin_42947972/article/details/102669728