随笔分类 -  多线程

线程池的创建 Executors工具类
摘要:package com.Java;import java.util.concurrent.*;public class TestPool { public static void main(String[] args) { //创建服务 创建线程池 ExecutorService service = 阅读全文
posted @ 2023-03-22 19:59 搁浅fff 阅读(32) 评论(0) 推荐(0)
线程通信-采用标志位
摘要:package com.Java;public class Testflag { public static void main(String[] args) { TV tv = new TV(); new Player(tv).start(); new Watcher(tv).start(); } 阅读全文
posted @ 2023-03-22 19:20 搁浅fff 阅读(22) 评论(0) 推荐(0)
Lock锁(性能更好,是代码块锁,synchronized锁能锁方法)
摘要:package com.Java;import java.util.concurrent.locks.ReentrantLock;//可重入锁public class TestLock { public static void main(String[] args) { TestLock2 test 阅读全文
posted @ 2023-03-07 19:26 搁浅fff 阅读(84) 评论(0) 推荐(0)
死锁案例 synchronized不要一次性拿两个锁
摘要:package com.Java;//死锁案例 互相持有对方的锁 并且想要拿到对方的资源public class DeadLock { public static void main(String[] args) { Makeup makeup = new Makeup(0, "灰姑凉"); Mak 阅读全文
posted @ 2023-03-07 19:05 搁浅fff 阅读(27) 评论(0) 推荐(0)
synchronized保证线程安全
摘要:package com.Java;//银行不安全案例 两个人同时取钱//使用 synchronized和synchronized块 可以锁住对象 保证线程的安全性public class TestBank { public static void main(String[] args) { Acco 阅读全文
posted @ 2023-03-06 20:01 搁浅fff 阅读(28) 评论(0) 推荐(0)
守护线程
摘要:package com.Java;//守护线程//虚拟机不需要等待守护线程执行完//虚拟机必须等待用户线程执行完public class TestDaemon { public static void main(String[] args) { God god = new God(); Yous y 阅读全文
posted @ 2023-03-04 17:09 搁浅fff 阅读(24) 评论(0) 推荐(0)
线程的优先级(最终还是要看cpu)
摘要:package com.Java;//线程优先级调度// 注意:不是调整了优先级就一定会被cpu先执行 只是提高了执行概率 一切还是要看cpu调度public class TestPriority { public static void main(String[] args) { System.o 阅读全文
posted @ 2023-03-04 16:39 搁浅fff 阅读(43) 评论(0) 推荐(0)
观察线程的5个状态 线程不能重新启动
摘要:package com.Java;//观测线程状态public class TestState { public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(() - 阅读全文
posted @ 2023-03-04 16:15 搁浅fff 阅读(35) 评论(0) 推荐(0)
Join线程强制执行
摘要:package com.Java;//Join 线程插队 必须执行完再执行其他线程public class TestJoin implements Runnable { @Override public void run() { for (int i = 0; i < 500; i++) { Sys 阅读全文
posted @ 2023-03-04 14:27 搁浅fff 阅读(25) 评论(0) 推荐(0)
线程礼让 Thread.yield(); 礼让不一定成功
摘要:package com.Java;//线程礼让 礼让不一定成功public class TestYield { public static void main(String[] args) { MyYield yield = new MyYield(); new Thread(yield, "a") 阅读全文
posted @ 2023-03-04 14:16 搁浅fff 阅读(25) 评论(0) 推荐(0)
线程sleep休眠的应用
摘要:package com.Java;import java.text.SimpleDateFormat;import java.util.Date;//每个对象都有一个锁 sleep不会释放锁public class TestSleep { public static void main(String 阅读全文
posted @ 2023-03-04 11:22 搁浅fff 阅读(22) 评论(0) 推荐(0)
线程的停止(建议线程正常运行停止)
摘要:package com.Java;public class TestStop implements Runnable {// 测试线程停止// 1.建议线程正常停止 -->利用次数 不建议死循环// 2.建议使用标志位--> 设置一个标志位// 3.不要使用stop和destroy等过时和jdk不建 阅读全文
posted @ 2023-03-04 10:29 搁浅fff 阅读(23) 评论(0) 推荐(0)
Lambda表达式的使用以及简化
摘要:package com.Java;public class Lambda1 { public static void main(String[] args) {// ILike ilike = null;// //可以有多个接口式函数// ilike = (int a)->{// }; Like l 阅读全文
posted @ 2023-03-04 09:52 搁浅fff 阅读(46) 评论(0) 推荐(0)
静态代理 婚礼案例
摘要:package com.Java;interface Marry { public void HappyMarry();}//静态代理总结//代理对象和真实对象都要实现同一个接口//代理对象要代理真实角色//好处//代理对象可以做很多真实对象做不了的事情//真实对象专注做自己的事情public cl 阅读全文
posted @ 2023-02-23 09:08 搁浅fff 阅读(33) 评论(0) 推荐(0)
创建多线程方式3:实现Callable接口 改造下载图片案例
摘要:package com.Test;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;import java.util.concurrent 阅读全文
posted @ 2023-02-22 20:14 搁浅fff 阅读(32) 评论(0) 推荐(0)
多线程 龟兔赛跑案例
摘要:package com.Java;public class Race implements Runnable{// 胜利者 private static String winner; @Override public void run() { for (int i = 0; i <=100; i++ 阅读全文
posted @ 2023-02-22 19:52 搁浅fff 阅读(17) 评论(0) 推荐(0)
多个线程操作一个对象
摘要:package com.Java;//多个线程操作同一个对象//抢火车票例子//发现问题 多个线程抢夺同个资源的情况下 线程不安全 数据紊乱public class TestThread4 implements Runnable{ private int titckNum = 10; @Overri 阅读全文
posted @ 2023-02-21 19:44 搁浅fff 阅读(50) 评论(0) 推荐(0)
创建多线程方式1:继承Thread开启多线程下载图片(不推荐,java的单一继承性)
摘要:package com.Java;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;//练习多线程Thread,实现多线程下载图片publ 阅读全文
posted @ 2023-02-21 19:33 搁浅fff 阅读(37) 评论(0) 推荐(0)
创建多线程方式2:使用Runnable(推荐)多线程下载图片
摘要:package com.Java;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;//练习多线程Thread, 实现Runnable接口 阅读全文
posted @ 2023-02-21 19:06 搁浅fff 阅读(15) 评论(0) 推荐(0)