
线程
雨后的猫
这个作者很懒,什么都没留下…
展开
-
Java(线程)生产者与消费者
生产者与消费者问题(同步,等待与唤醒) 出现问题: 1、生产者未生产商品,消费者就消费了; 2、消费者消费一次后,已经不存在商品了,再次消费; 3、连续生产,连续消费; 4、消费者消费的时候,会出现商品的两个属性不能正确对应。 ---> 使用同步解决商品属性不对应问题消费者取出商品(拿商品)public class Consumer implements Runnable { private Goods goods;..原创 2022-04-23 18:40:43 · 1736 阅读 · 0 评论 -
Java线程银行同时取钱问题
需求说明– 张三和妻子各拥有一张银行卡和存折,可以对同一个银行账户迚行存取款的操作,请使用多线程及同步方法模拟张三和妻子同时取款的过程。要求使用同步方法和同步代码块两种方式实现• 分析– 定义Account类表示银行帐户– 定义两个线程分别实现张三和妻子取款的操作public class ThreadWork5 implements Runnable{ private int money = 1000; @Override public void run() {.原创 2022-04-22 22:36:24 · 1124 阅读 · 0 评论 -
Java定义线程A、B并交替输出
需求说明– 定义一个线程A,输出1 ~ 10之间的整数,定义一个线程B,逆序输出1 ~ 10之间的整数,要求线程A和线程B交替输出• 分析– 使用sleep()方法阻塞当前线程public class ThreadWork4 implements Runnable{ @Override public void run() { for (int i = 1; i <= 10; i++) { System.out.println("A.原创 2022-04-22 22:33:54 · 334 阅读 · 0 评论 -
java用两种方式创建线程输出1~100之间的数
创建线程,输出1~100之间的偶数。要求使用两种方式创建线程第一种 通过继承Thread类来创建线程public class ThreadWork1 { public static void main(String[] args) { //创建线程对象 Thread1 t1 = new Thread1(); Thread2 t2 = new Thread2(); //调Start方法 t1.star...原创 2022-04-22 22:30:33 · 2466 阅读 · 0 评论 -
Java 死锁代码演示
死锁 过多的同步将产生死锁 ▪ 同步可以保证资源共享操作的正确性,但是过多同步也会产生死锁 ▪ 死锁一般情况下表示互相等待,是程序运行时出现的一种问题线程1和线程2共用对象o1和o2,且它们都想要对方的锁,最终形成阻塞,一直等待下去,这种现象就是死锁 就比如 互不信任的两个人都想把自己手里的东西与对方交换,但因为都不信任对方,担心对方拿走自己的就跑了,就一直想让对方先拿出来,从而就一直等待着public class ThreadWork2 implements .原创 2022-04-22 20:20:10 · 205 阅读 · 0 评论 -
Java线程实现窗口卖票
要求:四个线程,分别命名为1号窗口、2号窗口... 一共卖10张票,每个窗口买票的数量大致相同,每张票唯一。public class ThreadWork1 implements Runnable{ private int ticket = 10; @Override public void run() { for (int i = 0; i < 100; i++) { if (ticket > 0){ .原创 2022-04-22 20:17:34 · 618 阅读 · 0 评论