关于多线程的笔记总结

本文详细介绍了Java多线程的基本概念,包括线程的创建、同步、生命周期及与其他进程的区别。通过实例展示了如何使用synchronized关键字进行线程同步,并讨论了守护线程和普通线程之间的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多线程

 

1.       main()方法就是一个线程

 

2.       多线程中会经常用到匿名内部类,在写匿名内部类的时候,调用的变量应该是final类型的!

 

3.       **.join()   //等待线程终止。到底怎么用????????????????

 

4.       java中,线程分为两类:用户线程和守护线程

(线程).setDeamon(true)方法定义守护线程

一般情况下,我们都在主方法中调用其他方法,这是主方法应该作为主线程,守护线程的生命周期应该同主线程的生命周期一致,所以当主线程结束时,守护线程也随之结束,我们定义守护线程的目的就是不让在主线程结束后守护线程还在执行,那样的程序就不是我们想要的了

 

5.       线程和进程的区别:

线程是共享资源的,线程是资源的小分支

进程是独享资源的

 

6.       线程的同步

例:

final Counter con1=new Counter();

        //创建两个同步线程

        Thread th1=new Thread(new Runnable(){

            @Override

            public void run(){

                synchronized(con1){     //设置为同步

                     System.out.println("现在c值为:" +con1.to());

                con1.increment();

                try {

                    Thread.sleep(1000);

                } catch (InterruptedException ex) {

                   

                }

                System.out.println("++c的值是:"+con1.to());

                }

              

            }

        });

       

        Thread th2=new Thread(new Runnable(){

            @Override

            public void run(){

                synchronized(con1){       //设置为同步

                     con1.decrement();

                 try {

                    Thread.sleep(500);

                } catch (InterruptedException ex) {

                   

                }

                }

               

              

            }

        });

 

 

我们还可以在创建方法的时候把方法设置为同步方法。那样,当一个方法被访问的时候,只有这个方法执行结束,其他同步方法才能被访问、执行

例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值