
java 面试
J-Proton
这个作者很懒,什么都没留下…
展开
-
java知识点
Java开发一轮复习一、网络篇1、OSI七层模型与TCP/IP 五层模型 OSI七层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 TCP/IP五层:物理层、数据链路层、网络层、传输层、应用层2、常见应用层协议和运输层、网络层协议,以及硬件如路由器之类在哪一层 应用层:HTTP、SMTP、DNS、FTP 传输层:TCP 、UDP 网络层:ICMP 、IP、路由器、防火墙 数据链路层:网卡、网桥、交换机 物理层:中继器、集线器3、TCP与UDP区转载 2020-08-20 09:41:09 · 988 阅读 · 0 评论 -
IO模型总结
什么是同步异步阻塞非阻塞同步异步同步和异步体现的是消息通知这个机制同步:1 两个任务依次执行,前者的成功与否关系到后者,后者依赖于前者,要么同时成功要么同时失败,是一个可靠的任务序列2 当一个同步调用发出后,调用者要一直等待返回消息(结果)通知后,才能进行后续的执行;异步:1 不同任务的执行相互不产生依赖,任务被调用者调用后不会立马返回,在任务完成后会调用回调函数,通知给调用者,是一个不可靠的任务队列举例拿去银行排队办理业务来举例同步:在人后面排队,只有前面人都办完了,到你了,你就原创 2020-07-24 11:26:27 · 222 阅读 · 0 评论 -
Java生产者消费者condition实现
import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class BlockingQueue { public原创 2020-07-06 18:15:10 · 980 阅读 · 0 评论 -
Java 生产者消费者及手撕源码 (jdk阻塞队列写法)
import java.text.SimpleDateFormat;import java.time.LocalDate;import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;import java.util.Arrays;import java.util.Date;import java.util.concurrent.ArrayBlockingQueue;import java.util.concu原创 2020-07-06 15:12:27 · 323 阅读 · 0 评论 -
弱智题: 三个线程轮流打印ABC
import java.util.concurrent.locks.ReentrantLock;public class PrintABC { public static final ReentrantLock lock = new ReentrantLock(); public static char cnt = 'A'; public static int time...原创 2020-03-22 11:07:43 · 228 阅读 · 0 评论 -
操作系统概论
操作系统作业管理之进程调度就绪队列:排队机制:选择运行进程的委派机制 :新老进程的上下文委派机制:老进程如果没处理完就要非抢占式调度:处理器一旦分配给某个进程,就让进程一直使用下去调度程序不以任何原因抢占正在被使用的处理器只有进程走完了或IO阻塞才会让出处理器抢占式调度:允许调度程序以一定的策略暂停当前运行的进程保存好旧进程的上下文信息,分配处理器给新进程抢占式调度:频...原创 2020-02-03 12:24:03 · 277 阅读 · 0 评论 -
JAVA并发之阻塞队列
一.BlockingQueue:BlockingQueue是java.util.concurrent包下的一个队列类,从1.5开始,用于解决高并发环境中的队列应用,主要是生产者消费者问题支持两个附加操作的Queue,这两个操作是获取元素时等待队列变为非空,以及存储元素时等待空间变得可用。也就是: 阻塞添加:当队列满了之后又有元素想要添加进来,添加元素的线程会被阻塞,直到队列非满之...原创 2019-12-01 21:18:56 · 221 阅读 · 0 评论 -
Java并发编程 - CAS 底层剖析
Java并发编程 - CAS 底层剖析由volatile关键字可知,他可以保证JMM内存模型的可见性和有序性(禁止指令重排序)但是不能保证原子性,导致线程安全问题,我们可以加synchronized关键字来解决但是对于有些业务来说,synchronized太重了开销太大,所以我们可以用JUC包下的原子操作系列Atomic操作类,提供了操作的原子性。在底层的实现原理还是CAS。CAS:...原创 2019-11-19 12:07:35 · 281 阅读 · 2 评论 -
Java 异常处理总结
Java异常类层次结构图:Error: 是程序无法处理的错误,大部分与代码编写者无关,是jvm内部的运行错误,比如OutofMemoryError。Exception: 是程序可以处理的错误异常还分为可查异常和不可查异常:可查异常:编译器必须要求处理的异常,出了RuntimeException及其子类之外的都属于可查异常,他们的发生是可预计的,是提前用编译器可以检查出来的,如果发现有这...原创 2019-11-14 21:26:24 · 155 阅读 · 0 评论 -
Java 多线程 详解
前言:并发和并行并发指的是在同一时刻只能有一个进程运行,但多个进程可以来回迅速切换,使得在宏观上具有多个进程同时运行的效果,而并行是同一时刻有多条指令在多个处理器上同时执行。线程和进程线程也叫轻量级进程,线程是进程的组成部分,一个进程可以拥有多个线程,一个线程必须有一个父进程,线程共享父进程的所有资源线程是独立运行的,不知道有其他线程运行,执行是抢占式的。线程的调度和管理由进程本身完成...原创 2019-11-01 21:30:49 · 328 阅读 · 0 评论