随笔分类 - Java学习
摘要:简单介绍管道法: 生产者生产数据输送到管道,消费者从管道拿出数据,管道为空消费者等待,管道满生产者生产,消费者消费生产者生产,生产者生产消费者消费。
阅读全文
摘要:发生死锁的情况:多个线程需要同时占用多个共享资源而发生需要互相死循环等待的情况 线程类 解决方案: 将嵌套的同步机制改为“顺序”的同步机制,即我不需要同时占有,这里只是一个例子
阅读全文
摘要:转载至:https://blog.csdn.net/u012179540/article/details/40685207 Java中线程同步的理解
阅读全文
摘要:Cinema——List<Integer>数据结构存储电影院座位 很简单的一个例子,但是体会到了线程同步,也学会使用容器的一些常用方法。
阅读全文
摘要:Java在多线程中使用同步锁机制时,一定要注意锁对对象,下面的例子就是没锁对对象(每个线程使用一个被锁住的对象时,得先看该对象的被锁住部分是否有人在使用) 例子:两个人操作同一个银行账户,丈夫在ATM机上操作,妻子在银行柜台操作 账户类:账户里面有100万 ATM机类:里面存在一个Acount对象和
阅读全文
摘要:开启多线程时,每一个线程都拥有自己的工作空间,每个工作空间都单独的和主存打交道。 并发的概念:多个线程同时操作同一个对象 当产生并发时,如果从工作空间写入数据到内存的线程时间片用完了,其他线程再从主存读数据就会形成数据不统一。(只会在写数据时出现问题,简单的读数据是不会出现问题的)比如:教室里面只有一台电脑,大家都去使用,第一个同学使用后(时间片用完了)但是自己的任务还没完成,数据还没取出来,第...
阅读全文
摘要:join在线程里面意味着“插队”,哪个线程调用join代表哪个线程插队先执行——但是插谁的队是有讲究了,不是说你可以插到队头去做第一个吃螃蟹的人,而是插到在当前运行线程的前面,比如系统目前运行线程A,在线程A里面调用了线程B.join方法,则接下来线程B会抢先在线程A面前执行,等到线程B全部执行完后
阅读全文
摘要:相同点: 让线程暂停运行。 都是静态方法,可以直接调用。 不同点: sleep让线程从运行状态进入阻塞状态,但是不放开手中的资源。 yield让线程从运行状态进入就绪状态,释放手中资源,再次等到CPU调度。
阅读全文
摘要:JDK8的新特性之一Lambda能将函数作为方法里面的参数使用。 外部类——>静态内部类——>局部内部类——>匿名内部类——>Lambda Lambda的局限性:仅合适只有一个方法的接口(简单接口,Runnable接口里面就只有一个方法run())。
阅读全文
摘要:实现多线程方式1:继承类Thread——重写方法run——调用方法start 从网络下载图片首先要增加包commons-io.jar 实现多线程方式2:实现Runnable——重写run()方法——new Thread( 实现了Runnable接口的对象 ).start 下载工具类和上面一样,实现多
阅读全文
摘要:用一句话讲明回调机制就是,在A类里面拥有一个类B的对象,调用B类的某个方法并把自身引用传入,在B类的这个方法里面又通过传进来的A的引用来调用A类的某个方法(这个最后调用的A类的方法就叫做回调方法)。 举一个小例子: 接口里面定义了回调函数(用来给员工回调的) 类Employer(老板):里面定义了一
阅读全文

浙公网安备 33010602011771号