- 博客(27)
- 收藏
- 关注
转载 6.java并发容器和框架——Fork/Join框架
1.什么是Fork/Join框架2. 工作窃取算法3. Fork/Join框架的设计4. 使用Fork/Join框架5.Fork/Join框架的异常处理6. Fork/Join框架的实现原理转载于:https://www.cnblogs.com/panda777/p/11595338.html...
2019-09-27 00:24:00 202
转载 6.java并发容器和框架——Java中的阻塞队列
1.什么是阻塞队列2. Java里的阻塞队列3. 阻塞队列的实现原理转载于:https://www.cnblogs.com/panda777/p/11595330.html
2019-09-27 00:22:00 180
转载 6.java并发容器和框架——ConcurrentLinkedQueue
1.ConcurrentLinkedQueue的结构2.入队列3.出队列转载于:https://www.cnblogs.com/panda777/p/11595323.html
2019-09-27 00:20:00 204
转载 6.java并发容器和框架——ConcurrentHashMap的实现原理与使用
1.为什么使用ConcurrentHashMap?2.ConcurrentHashMap的结构3.ConcurrentHashMap的初始化4.定位Segment5.ConcurrentHashMap的操作转载于:https://www.cnblogs.com/panda777/p/11595316.html...
2019-09-27 00:17:00 169
转载 5、java并发编程的艺术-java中的锁
本章将介绍了java并发包中与锁相关的API和组件,以及这些API和组件的使用方法和实现细节。内容主要围绕两个方面:使用,通过示例演示这些组件的使用方法以及详细介绍与所相关的API;实现,通过分析源码来剖析实现细节,因为理解实现的细节方能更加得心应手且正确的使用这些组件。希望通过以上两个方面的讲解使开发者对锁的使用和实现两个层面有一定的了解。1、Lock接口 锁时用来控...
2019-09-02 23:24:00 224
转载 4.java并发编程艺术-java并发编程基础
java从诞生开始就明智的选择了内置对多线程的支持,这使得java语言相比同一时期的其他语言具有明显的优势。线程作为操作系统调度的最小单元,多个线程能够同时执行,这将显著提升程序的性能,在多核环境中表现的更加明显。但是,过多的创建线程和对线程的不当管理也容易造成问题。本章将着重介绍java并发编程的基础知识,从启动一个线程到线程间不同的通信方式,最后通过简单的线程池示例以及应用(简单...
2019-08-15 00:34:00 231
转载 3.java并发编程艺术-java内存模型
3.1 java内存模型的基础 3.1.1并发编程模型的两个关键问题 在并发编程中,需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指两个线程 之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。 在共享内存的并发模型里,线程之间共享程序的公共状态,通过写-读内存中的公共状态...
2019-08-11 22:25:00 124
转载 2.java并发编程的艺术-java并发机制的底层实现原理
java代码在编译后都会编程java字节码,字节码被类加载器加载到jvm里,jvm执行字节码,最终需要转化为汇编指令在CPU上执行,java中所使用的并发机制依赖于jvm的实现和CPU的指令。2.1 volatile的应用 在多线程并发编程中synchronized和volatile都扮演着重要角色,volatile是轻量级的synchronized,他在多处理器开发...
2019-08-04 15:17:00 105
转载 1.java并发编程艺术-并发编程的挑战
1.1上下文切换 单核处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制。时间片是CPU分配给各个线程的时间,因为时间片非常短,所以CPU通过不停的切换线程执行。 CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是在切换之前会保存上一个任务的状态,以便下一次切换回下一个任务时,可以再加载这个任务的状态,所以任务...
2019-08-03 15:54:00 94
转载 并发编程面试题
1.Synchronized的原理https://www.cnblogs.com/zaizhoumo/p/7700161.html Java的每一个对象都可以作为锁,当一个线程访问时,首先要获取锁对象,退出代码块或抛出异常时才会释放锁。 常见的三种用法: 普通方法, 静态方法 同步代码块 普通方法和静态方法实现锁 是通...
2019-07-23 14:47:00 112
转载 java--集合框架
1.ArrayList和Vector的区别? 1.vector 的所有方法都是同步(Synchronized)的,是线程安全的(thread-safe)的,而ArrayList是线程不安全的,线程安全是会影响性能,ArrayList 比vector的性能好 2.当Vector或ArrayList元素超过初始大小时,vector会将容量翻倍,而arrayList会扩容50%,因...
2019-07-16 19:34:00 85
转载 ARTS第十三周打卡
1.Algorithmhttps://leetcode-cn.com/problems/implement-strstr/public class Demo { public static void main(String[] args) { int i = strStr("helloeeeee", "lloeee"); Sy...
2019-07-14 21:30:00 110
转载 面试分享-jvm
1.fiaalize()方法什么时候被调用,析构函数(finalization)的目的是什么? 1.当一个对象 gc roots 不可达时,在下一个垃圾回收周期并尝试回收该对象。如果这个对象重写了finalize()方法,并在这个方法中成功自救(将自身赋值某个引用),那么该对象不会回收,如果这个对象没有重写finalize()或者已经执行过了,那么这个对象自救失败,该对象也将被回收...
2019-07-13 00:05:00 105
转载 ARTS第十二周打卡
1.Algorithm https://leetcode-cn.com/problems/remove-element/solution/yi-chu-yuan-su-by-leetcode/2.Review 3.Tip https://blog.csdn.net/qq_35619711/article/details/72233011cookie 和sessi...
2019-07-08 10:56:00 84
转载 spring 事务
@componentpublic class FooServiceImpl implements FooService{ @Autowired private JdbcTemplate jdbcTemplate; @Override @Transactional public void insertRecord(){ ...
2019-07-03 21:36:00 89
转载 ARTS第十一周打卡
1.Algorithm https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/2.Review https://redis.io/topics/ldb 主要讲解了redis lua scripts debugger 代号LDB 主要功能 它使用服务器-客户端模型,redis s...
2019-06-09 18:25:00 71
转载 ATRS第十周打卡
1.Algorithm https://leetcode-cn.com/problems/merge-two-sorted-lists/ 方法 1:递归想法我们可以如下递归地定义在两个链表里的merge操作(忽略边界情况,比如空链表等):\left\{ \begin{array}{ll} list1[0] + merge(list1[1:], list2)...
2019-05-26 19:21:00 114
转载 ARTS第九周打卡
1.Algorithm https://leetcode-cn.com/problems/valid-parentheses/2.Review https://link.medium.com/cYh3IseBKW 介绍了 app 的改革 直接在浏览器展示页面 没有必要下载APP3.Tip hibernate 级联查询导致内存溢出 先解决方法 忽略字段4...
2019-05-20 18:53:00 149
转载 ARTS第八周打卡
1.Algorithm https://leetcode-cn.com/problems/palindrome-number/2.review3.Tipschoose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 otherwise 中的sql。类似于...
2019-05-06 11:06:00 192
转载 ARTS第七周打卡
1.Algorithm https://leetcode-cn.com/problems/median-of-two-sorted-arrays/2.Reviewhttps://programtalk.com/java/top-corejava-interview-questions/equals()和hashCode()使用时的约定规则。equals()和ha...
2019-04-28 19:18:00 240
转载 ARTS第六周打卡
1.Algorithm给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。** 示例 1:** 输入: "abcabcbb"* 输出: 3* 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。public static int lengthOfLongestSubstring(String s){ int n = s.length...
2019-04-28 18:59:00 144
转载 ARTS第五周打卡
1.Algorithm 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1: 输入: 123 输出: 321示例 2: 输入: -123 输出: -321示例 3: 输入: 120 输出: 21public int reverse(int x) { i...
2019-04-19 13:24:00 136
转载 ARTS第四周打卡
1.Algorithm 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度 https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/2.Review https://mp.weixin.qq.com/s/Wo61D8yzoOx-rpvCmlSyxg...
2019-04-14 17:11:00 137
转载 ARTS第三周打卡
1.Algorithm给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21class Solution { public int reverse(int x) { in...
2019-04-07 11:03:00 64
转载 ARTS 第二周
1.Algorithm 给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。输入:(2 -> 4 -> 3) + (5 -> 6 ->...
2019-03-31 12:31:00 80
转载 ARTS第一周
1.Algorithm 给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9...
2019-03-24 16:27:00 77
转载 Java 代码是怎么运行的
1.Java代码有很多 不同的运行方式 1)可以在开发工具中运行 2)可以双击执行jar文件运行, 3)也可以在命令行中运行 4)甚至可以在网页中运行 这些执行方式都离不开JRE ,也就是Java的运行环境。JRE仅包含运行Java程序的必须组件,包括Java虚拟机以及Java核心类库。Java程序员经常接触到的JDK同样包含JRE,...
2019-03-17 16:11:00 407
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人