多线程基础

本文详细介绍了多线程的基础知识,包括线程的概念、应用场景、并行与并发的区别,以及Java中实现多线程的两种主要方式:继承Thread类和实现Runnable接口。还探讨了线程安全问题、死锁、同步代码块、同步方法、线程通信、线程组、线程池和单例设计模式。最后提到了Java 1.5引入的互斥锁特性。
摘要由CSDN通过智能技术生成

多线程的引入

什么是线程

  • 线程是程序执行的一条路径,一个进程中可以包含多条线程
  • 多线程并发执行可以提高程序的效率,可以同时完成多项工作

多线程的应用场景

  • 红蜘蛛同时共享屏幕给多个电脑
  • 迅雷开启多条线程一起下载
  • QQ同时和多个人一起视频
  • 服务器同时处理多个客户端请求

多线程并行和并发的区别

并行就是两个任务同时运行,就是甲任务进行的同时,乙任务也在进行。(需要多核CPU)

并发是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间间隔较短,使人感觉两个任务都在运行。

比如我跟两个网友聊天,左手操作一个电脑跟甲聊,同时右手用另一台电脑跟乙聊天,这就叫并行。
如果用一台电脑我先给甲发个消息,然后立刻再给乙发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

9.冄2.7.號

你的鼓励将是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值