随笔分类 -  Java高级

摘要:package A_ShangGuiGu.Thread.ThreadTest;import java.util.concurrent.*;/** * 创建线程的方式四:使用线程池。 * 线程池的好处: * 1.提高响应速度(减少了创建线程的时间) * 2.降低资源消耗(重复利用线程池中线程,不需要每 阅读全文
posted @ 2022-10-25 03:11 zhazhawei906 阅读(746) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent 阅读全文
posted @ 2022-10-25 01:50 zhazhawei906 阅读(51) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;/** * 生产者消费者问题:生产者(Producer)将商品(commodity)交给商店(Shop),消费者(Consumer)进行消费 * 商店里的商品数量上限为20个,当商店里的商品数量达到上限时,通知生产者停止生 阅读全文
posted @ 2022-10-24 03:40 zhazhawei906 阅读(32) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;/** * 线程通信的实例:两个线程交替打印1-100,一人一次 * 涉及到的方法: * wait():调用wait()方法会使得调用该方法的线程进入阻塞状态。同时释放锁。 * notify():唤醒一个wait的线程,如 阅读全文
posted @ 2022-10-24 02:38 zhazhawei906 阅读(25) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;import java.util.concurrent.locks.ReentrantLock;/** * 解决线程安全问题的方式三:Lock锁 jdk5.0新增 * 1.首先要创建一个ReentrantLock的对象。 阅读全文
posted @ 2022-10-23 03:04 zhazhawei906 阅读(25) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;import java.util.concurrent.locks.ReentrantLock;////////////////////////////class zhanghu{//账户类,定义一个余额属性。 priva 阅读全文
posted @ 2022-10-23 02:59 zhazhawei906 阅读(43) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadTest;/** * 演示死锁问题 * 1.死锁的理解:不同的线程分别占用对方需要的同步资源,都在等待对方释放自己所需的另一个资源,就形成了死锁。 * 2.死锁出现后,程序不会出现异常,也不会出现提示,只是所有的线程都处于阻塞状态, 阅读全文
posted @ 2022-10-23 01:13 zhazhawei906 阅读(37) 评论(0) 推荐(0)
摘要:使用同步方法解决线程安全问题 实现接口的同步方法实例 package A_ShangGuiGu.Thread.ThreadDemo;​/** * 使用同步方法解决Runnable接口的线程安全问题。 * 将需要对代码进行的操作全部放入一个方法中,在方法名前使用synchronized字段来将该方法定 阅读全文
posted @ 2022-10-23 00:38 zhazhawei906 阅读(188) 评论(0) 推荐(0)
摘要:使用同步代码块解决线程安全问题 package A_ShangGuiGu.Thread.ThreadDemo;​/** * 例子:三个窗口买票,使用实现Runnable接口的方法。 * 1.出现的问题:卖票过程中出现了重票,错票的问题。——————————》线程的安全问题 * 2.问题出现的原因:在 阅读全文
posted @ 2022-10-22 17:42 zhazhawei906 阅读(142) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2022-10-22 14:43 zhazhawei906 阅读(25) 评论(0) 推荐(0)
摘要:package A_ShangGuiGu.Thread.ThreadDemo;/** * 优先级 * 1.MAX_Priority 最大优先级为10 * 2.MIN_Priority 最小优先级为1 * 3.NORM_Priority 默认优先级5 * 4.getPriority 获取当前线程的优先 阅读全文
posted @ 2022-10-22 13:09 zhazhawei906 阅读(102) 评论(0) 推荐(0)
摘要:java中的多线程的常用方法 /* Java中Thread(线程)中的常用方法。 1.start():用来启动当前线程,调用当前线程的run() 2.run():通常需要重写Thread中的此方法,将创建的线程要执行的操作声明到该方法中。也就是把代码写到run(){}的大括号中 3.currentT 阅读全文
posted @ 2022-10-21 00:10 zhazhawei906 阅读(323) 评论(0) 推荐(1)
摘要:java中的多线程与继承方式创建多线程 程序:是完成特定任务,用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 进程:是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程、 生命周期 程序是静态的,进程是动态的。 进程作为资源分配的单位,系统 阅读全文
posted @ 2022-10-20 22:40 zhazhawei906 阅读(179) 评论(0) 推荐(0)