![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
weixin_42719711
这个作者很懒,什么都没留下…
展开
-
多线程学习笔记---(线程不安全问题)
线程不安全问题 取钱问题 账户余额是100,两个人都要取100,两个人在取之前都获取到余额是100,可以继续往下取,第一个人取完了,余额变为0,第二个人继续取,余额变成负数;或者两个人都获取到100,在取的时候也是100,使得两个人都取过之后最新的余额为0 public class BuyTicket { public static void main(String[] args) { People lily = new People("lily", 0); Pe原创 2020-09-02 13:34:10 · 98 阅读 · 0 评论 -
多线程学习笔记---(基础知识)
文章目录进程与线程的简单理解开启多线程的三个方式ThreadRunnableCollable关于Java泛型静态代理lambda表达式停止线程的方式sleep--线程休眠yield--线程礼让join--线程强行执行线程状态线程优先级守护线程 进程与线程的简单理解 程序是指令的集合,程序跑起来就是进程。 同一个程序可以有多个进程,比如qq可以启动多个客户端程序登陆不同的账号。 进程是资源分配的最小单位。线程是cpu调度的最小单位。 进程之间不会共享资源,否则一个软件就会获取到另一个软件的密码,而线程之间可以原创 2020-09-02 13:33:17 · 119 阅读 · 0 评论 -
java.util.Scanner中hasNext()方法和next()方法的区别
先说结论: 两者均根据空格划分数据 两者在没有数据输入时均会等待输入 next()方法会将空格划分的数据依次输出,运行一次,输出一个 hasNext()方法会跟着next()方法移动,当前数据不为空,则返回true 代码 import java.util.Scanner; public class MyScanner { public static void main(String[] args) { Scanner scanner = new Scanner(System.i原创 2020-08-11 21:23:19 · 382 阅读 · 0 评论