实习期间学习笔记
文章平均质量分 60
mmalan
这个作者很懒,什么都没留下…
展开
-
notfiy notifyall区别
异步 异步就是两者是独立的 比如页面发起ajax请求 我们也能操作浏览页面其他的东西同步 同步指的是两者有顺序 要进行排队 先来的先处理完 后来的才能开始处理wait() notify() 所有对象都有这两个方法 wait释放锁 notify不立马释放锁下面分析一个 notifyall() notify()的问题 这是一个多线程生产者 消费者的问题 使用 wait notify进行模...原创 2018-03-18 12:04:50 · 801 阅读 · 1 评论 -
class字节码理解 1
class文件是编译器编译之后供虚拟机解释执行的二进制字节码文件,不只是java, 比如Groovy,JRuby,FANTOM,Jython,和Scala。这是在jvm上运行的5大脚本语言。下面就带你分析一个class的字节码文件,class文件只有无符号数和表两种基本的数据类型,u1,u2,u4,u8代表1个字节,2个字节,4个字节,8个字节的无符号数。表是由无符号数和表组合而成的结构,说表觉得...转载 2018-04-17 23:26:38 · 509 阅读 · 0 评论 -
tcp 如何保证可靠传输 tcp udp 报头格式的区别
一 建立连接tcp udp 报头格式里面 tcp有着 SYN ACK FIN的标记位 ,这些标记位用于建立 释放连接使用。SYN=1 表示发送方想要建立一个连接 ACK=1 的时候确认序号才有效。FIN=1 表示发送方想要停止发送数据,想要断开连接,但是可以接受数据。二 超时重传2.1 超时重传为每一个报文段设置超时时间,超过超时时间还没有收到确认,发送方就会重传这个报文段。2.2 连续三次...原创 2018-04-05 16:17:57 · 195 阅读 · 0 评论 -
异常分类
ava异常机制异常是程序运行过程中出现的错误。本文主要讲授的是Java语言的异常处理。Java语言的异常处理框架,是Java语言健壮性的一个重要体现。Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception。Java异常体系结构呈树状,其层次结构图如图...转载 2018-03-29 15:15:34 · 2258 阅读 · 0 评论 -
垃圾回收器
GC算法 垃圾收集器概述垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要集中于 java 堆和方法区中,在程序运行期间,这部分内存的分...转载 2018-04-17 08:15:44 · 155 阅读 · 0 评论 -
垃圾收集器比较
转载地址 https://blog.csdn.net/u010798968/article/details/72864860Serial:串行收集器,JVM client模式下的默认收集器,使用复制算法,在进行垃圾回收时会暂停其他所有的工作线程(stop the world,简称STW)直至回收结束,因此会影响用户的正常使用体验,但是因为少了多线程切换的开销,相较于其他收集器能够更加专注于垃圾回收...转载 2018-04-16 22:57:26 · 281 阅读 · 0 评论 -
转发与重定向的区别
一句话,转发是服务器行为,重定向是客户端行为。为什么这样说呢,这就要看两个动作的工作流程:转发过程:客户浏览器发送http请求----》web服务器接受此请求--》调用内部的一个方法在容器内部完成请求处理和转发动作----》将目标资源发送给客户;在这里,转发的路径必须是同一个web容器下的url,其不能转向到其他的web路径上去,中间传递的是自己的容器内的request。在客户浏览器路径栏显示的仍...转载 2018-03-27 17:03:11 · 170 阅读 · 1 评论 -
动态绑定 静态绑定
程序绑定的概念:绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定.静态绑定:在程序执行前方法已经被绑定(也就是说在编译过程中就已经知道这个方法到底是哪个类中的方法),此时由编译器或其它连接程序实现。例如:C。针对java简单的可以理解为程序编译期的绑定;这里特别说明一点,java当中的方法只有final,static...转载 2018-04-02 16:27:57 · 295 阅读 · 0 评论 -
浅谈Java垃圾回收
常见垃圾回收算法:(1) 标记-清除算法最基础的算法是标记-清除算法,首先标记出需要回收的对象,标记完后统一回收,这样做的缺点导致内存不连续,如果分配一个大对象,会导致新一次垃圾回收。(2) 复制算法为了解决Mark-Sweep算法的缺陷,Copying算法就被提了出来。它将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再...原创 2018-01-19 13:45:33 · 131 阅读 · 0 评论 -
jdk1.6 对锁做的优化
JDK1.6对锁做了很多优化,轻量级锁和偏向锁是其中两种优化手段,我把主要的几种优化都简单介绍下吧:自旋锁背景:互斥同步对性能最大的影响是阻塞,挂起和恢复线程都需要转入内核态中完成;并且通常情况下,共享数据的锁定状态只持续很短的一段时间,为了这很短的一段时间进行上下文切换并不值得。原理:当一条线程需要请求一把已经被占用的锁时,并不会进入阻塞状态,而是继续持有CPU执行权等待一段时间,该过程称为『自...转载 2018-04-14 19:04:22 · 546 阅读 · 0 评论 -
ssl握手过程
a是客户端 b是服务端1.服务端配置好证书,用证书的私钥加密服务端的公钥,发到客户端2. 客户端用证书的公钥解密 拿到服务端的公钥 客户端随机生成对此加密的密钥 然后再用公钥加密对称密钥传给服务端3 服务端收到 用服务端私钥解密 拿到对话的对称密钥4 然后发送消息以后都用对称密钥进行加密。...原创 2018-04-09 15:47:11 · 291 阅读 · 0 评论 -
class字节码理解 二
拖了好久啊,终于写着第二篇啦,第一篇主要是分析了class文件的常量池结构。class文件并不是一堆字节码的简单排列,他们都有自己的结构,jvm主要就是对这些结构进行解释执行的,对于执行次数频繁的代码,jvm会生成机器码以加快执行效率。好了,废话不多说,接下来继续分解。以下class文件依次描述了类,接口;字段;方法;注:除特殊说明外,下面所写的0010,0001什么的都是16进制。1.类,父类,...转载 2018-04-17 23:28:07 · 275 阅读 · 0 评论