Core Java
文章平均质量分 65
海龙2012
这个作者很懒,什么都没留下…
展开
-
AQS:AbstractQueuedSynchronizer原理
AQS:AbstractQueuedSynchronizer 原理队列排队,阻塞调度?aqs一个抢占资源同步器框架,里面有队列,对队列等待,唤醒机制。一个线程获取资源,如果资源没有占用,返回成功获取资源,如果资源被占用,放到有序队列末尾,监听前一个节点,等待到前一节点释放状态变更(要求状态小于0,大于0是取消了抢占任务),此线程唤醒调整头节点再尝试获取资源。1,非公平和公平锁抢占资源不成功分别什么处理流程2,非公平锁自旋插入队尾,什么场景会不入队3,说说可重入锁的实现4,其中还有个状态.原创 2021-01-05 16:04:47 · 152 阅读 · 0 评论 -
java队列理解
ThreadPoolExecutor的三种队列SynchronousQueue,LinkedBlockingQueue,ArrayBlockingQueueSynchronousQueueSynchronousQueue是无界的,是一种无缓冲的等待队列,但是由于该Queue本身的特性,在某次添加元素后必须等待其他线程取走后才能继续添加;可以认为SynchronousQueue是一个缓存值为1的阻塞队列,但是 isEmpty()方法永远返回是true,remainingCapacity() 方法永远返原创 2020-12-15 20:56:46 · 145 阅读 · 0 评论 -
类加载,反射,双亲委派,生命周期
21.深入理解java反射(运行时校验读取class文件信息的字段,方法,构造方法等)https://www.cnblogs.com/luoxn28/p/5686794.htmlRTTI在编译知道此类型去验证,运行时让我们知道是什么类型,反射打破这个规律在运行时,去验证加载,匿名对象的类信息就在运行时被完全确定下来,而在编译时不需要知道任何事情。reflect类库一起对反射的概念进行了支持,该类库包含了Field字段、Method方法以及Constructor构造器类(每个类都实现了Member接口原创 2020-11-30 21:08:00 · 137 阅读 · 0 评论 -
equals()和hashCode()区别与重写
[url]https://www.cnblogs.com/jesonjason/p/5492208.html[/url][url]http://blog.csdn.net/javazejian/article/details/51348320[/url][code="java"]package com.pingan.haofang.agent.saas.dict.dto;i...原创 2018-03-05 14:25:36 · 154 阅读 · 0 评论 -
海量数据排序(电商应用)
[b]问题:[/b]海量排序数据:4亿数据放哪里呢不放数据库,不放集合类(内存溢出),是存放在文件里内存有限,50或500亿单词数字文本进行排序?稳定排序&不稳定排序:[url]https://www.cnblogs.com/codingmylife/archive/2012/10/21/2732980.html[/url]解决问题多线程高并发,海量数据...原创 2018-01-16 16:53:53 · 153 阅读 · 0 评论 -
非阻塞IO和异步IO的区别
[url]https://www.cnblogs.com/euphie/p/6376508.html[/url][url]http://blog.chinaunix.net/uid-26000296-id-3754118.html[/url]非阻塞调用指在不能立刻得到结果之前,该调用不会阻塞当前线程。阻塞调用是指调用结果返回之前,当前线程会被挂起。函数只有在得到结果之后才会返回。...原创 2017-12-24 21:13:31 · 1839 阅读 · 0 评论 -
HashMap与ConcurrentHashMap 的数据结构
[b]HashMap:[/b]数组与链表,每个数据对应一个链表插入时进行与运算[url]http://blog.csdn.net/tingting256/article/details/52475422[/url]数组默认长度16,当超过16*0.75=12时,组数长度变为16*2->叫resize,毁HashMap的基础构造器HashMap(int initialCapaci...原创 2017-12-24 21:01:59 · 122 阅读 · 0 评论 -
算法相关
1.选择排序:不稳定,时间复杂度 O(n^2)2.插入排序:稳定,时间复杂度 O(n^2)3.冒泡排序:稳定,时间复杂度 O(n^2)4.堆排序:不稳定,时间复杂度 O(nlog n)5.归并排序:稳定,时间复杂度 O(nlog n)6.快速排序:不稳定,时间复杂度 最理想 O(nlogn) 最差时间O(n^2)7.希尔排序:不稳定,时间复杂度 平均时间 O(nlogn) ...原创 2017-12-21 16:52:16 · 83 阅读 · 0 评论 -
java8语法
new String(a,b,c) => a是字符串, b是起始位置, c是长度?byte[] byteValue = "testBytes".getBytes(); => 字符串转化为一个字节数组byte[]的方法。 public BigDecimal getDiscount() { BigDecimal discount = this.discount; if(Val...原创 2016-12-04 14:12:13 · 82 阅读 · 0 评论