首页 > 编程语言 > 详细

Java复习 之多线程

时间:2018-09-02 19:23:03      阅读:182      评论:0      收藏:0      [点我收藏+]

线程是一个程序中的不同路径

技术分享图片

例子1

只有一条路径

技术分享图片

每一个分支都是一个线程

实际上在一个时刻内 电脑只能运行一个进程 但是因为cpu运算速度很快 将时间分出来了 所以我们感觉是同时运行

技术分享图片

创建线程的两种方式

技术分享图片

例子1:

技术分享图片

例子2:

技术分享图片

继承自thread

技术分享图片

尽量使用接口

线程状态切换

技术分享图片

线程控制的基本办法

技术分享图片

sleep/join/yield方法

技术分享图片

测试1

技术分享图片

测试2

技术分享图片

合并到一个main方法

 

 

技术分享图片

线程的优先级(并不是全部)

技术分享图片

技术分享图片

例子

技术分享图片

例子

技术分享图片

怎样正确的停止

技术分享图片

技术分享图片

currentThred拿到当前的线程

线程同步:

问题描述

技术分享图片

有3000块钱,你和你老婆都去取钱 你去柜台去取 你老婆去atm机取 同时取钱 先检查是否够钱 最后发现都够 你和你老婆都取了2000块钱 账户修改至1000,然后你却拿了4000? 这是不可能的

例子

技术分享图片

技术分享图片

锁定当前对象

技术分享图片

例子

技术分享图片

面试题

技术分享图片

运行结果是1000

锁只是锁住方法里的

生产者 消费者问题

技术分享图片

做馒头和吃馒头

notify 叫醒wait

wait和sleep的区别

wait是object的方法 sleep是thread的方法

wait

别的是可以访问的

sleep是无法访问的

  

Java复习 之多线程

原文:https://www.cnblogs.com/frankzone/p/9574714.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!