多线程总结,九大知识点!


学习多线程基础,这一篇就够啦!(一):https://blog.csdn.net/weixin_43827227/article/details/96606212

学习多线程基础,这一篇就够啦!(二):https://blog.csdn.net/weixin_43827227/article/details/96982701

多线程总结:

1,进程和线程的概念。
       |--进程:

       |--线程:

2,jvm中的多线程体现。
       |--主线程,垃圾回收线程,自定义线程。以及他们运行的代码的位置。

3,什么时候使用多线程,多线程的好处是什么?创建线程的目的?
       |--当需要多部分代码同时执行的时候,可以使用。

4,创建线程的两种方式。★★★★★
       |--继承Thread

              |--步骤

       |--实现Runnable

              |--步骤

       |--两种方式的区别?

5,线程的5种状态。
       对于执行资格和执行权在状态中的具体特点。

       |--被创建:

       |--运行:

       |--冻结:

       |--临时阻塞:

       |--消亡:

6,线程的安全问题。★★★★★
       |--安全问题的原因:

       |--解决的思想:

       |--解决的体现:synchronized

       |--同步的前提:但是加上同步还出现安全问题,就需要用前提来思考。

       |--同步的两种表现方法和区别:

       |--同步的好处和弊端:

       |--单例的懒汉式。

       |--死锁。

      

7,线程间的通信。等待/唤醒机制。
       |--概念:多个线程,不同任务,处理同一资源。

       |--等待唤醒机制。使用了锁上的 wait notify notifyAll.  ★★★★★

       |--生产者/消费者的问题。并多生产和多消费的问题。  while判断标记。用notifyAll唤醒对方。 ★★★★★

       |--JDK1.5以后出现了更好的方案,★★★

              Lock接口替代了synchronized 

              Condition接口替代了Object中的监视方法,并将监视器方法封装成了Condition

              和以前不同的是,以前一个锁上只能有一组监视器方法。现在,一个Lock锁上可以多组监视器方法对象。

              可以实现一组负责生产者,一组负责消费者。

       |--wait和sleep的区别。★★★★★

      

8,停止线程的方式。
       |--原理:

       |--表现:--中断。

9,线程常见的一些方法。
       |--setDaemon()守护线程

       |--join();

       |--优先级

       |--yield();

       |--在开发时,可以使用匿名内部类来完成局部的路径开辟。

发布了38 篇原创文章 · 获赞 6 · 访问量 1927

猜你喜欢

转载自blog.csdn.net/weixin_43827227/article/details/97006119