标签:垃圾回收

编程技术

深入剖析 JavaScriptCore

12

小丁 发布于 2018-04-22

最近开始涉及 JS 的解析和处理工作,所以专门研究了下这块。特别是动态类型的处理以及不同引擎对于平台无关的字节码的设计和处理会有很大的帮助。 JavaScriptCore 介绍 JavaScriptCore 是 JavaScript 引擎,通常会被叫做虚拟机,专门设计来解释和执行...

阅读(30)评论(0)赞 (0)

编程技术

Apache Common Pool2 对象池应用浅析

6

darida 发布于 2018-04-21

作者 | 乔宇 杏仁后端工程师,关注服务端技术。 我们系统中一般都会存在很多可重用并长期使用的对象,比如线程、TCP 连接、数据库连接等。虽然我们可以简单的在使用这些对象时进行创建、使用结束后销毁,但初始化和销毁对象的操作会造成一些资源消耗。我们可以使用对象池将这些对象集中管理,...

阅读(33)评论(0)赞 (0)

编程技术

Apache Kylin实践:链家数据分析引擎的演变史

3

yanxinchi 发布于 2018-04-19

作者介绍: 链家网工程师,大数据架构团队成员,目前主要负责 OLAP 平台建设及大数据应用拓展。 前言 伴随链家业务线的拓宽和发展,以及数据生态的建设,数据规模快速增长。从 2015 年大数据部门成立至今,集群数据存储量为 9PB,服务器规模为 200 台 +。与此同时,数据需求...

阅读(24)评论(0)赞 (0)

编程技术

Go语言的美好和丑陋

3

hellas 发布于 2018-04-19

这是一个“ Go不好 ”系列的额外文章。Go确实有一些不错的特性,也就是本文中“好的”部分,但是当我们不使用API或者网络服务器(这是为它设计的)而且将它用于业务领域逻辑的时候,总体而言我发现它用起来笨重且糟糕。但是即使在用于网络编程的时候,在设计和实现方面它也有很多缺陷,这导致...

阅读(26)评论(0)赞 (0)

编程技术

五分钟了解Java10针对垃圾收集的改进

puefu.he 发布于 2018-04-18

Java10 已经发布了大概有一个多月了。我们在之前的文中介绍过10为我们带来的一些新特性: JDK10要来了:下一代 Java 有哪些新特性? 。其中就提到了10 关于G1垃圾收集器的一些改进。G1在Java 9的时候已经是被作为默认的垃圾收集器了。如果你了解G1的话,应该知道...

阅读(44)评论(0)赞 (0)

编程技术

Thread源码剖析

28

xirruiqiang 发布于 2018-04-18

前言 昨天已经写了: 多线程三分钟就可以入个门了! 如果没看的同学建议先去阅读一遍哦~ 在写文章之前通读了一遍《Java 核心技术 卷一》的并发章节和《Java并发编程实战》前面的部分,回顾了一下以前写过的笔记。从今天开始进入多线程的知识点咯~ 我其实也是相当于从零开始学多线程的...

阅读(29)评论(0)赞 (0)

编程技术

组件复用那些事儿 – React 实现按需加载轮子

4

xiaoli.he 发布于 2018-04-17

组件化在当今前端开发领域中是一个非常重要的概念。著名的前端类库,比如 React、Vue 等对此概念都倍加推崇。确实,组件化复用性(reusability)和模块性(modularization)的优点对于复杂场景需求具有先天优势。组件就如同乐高积木、建筑石块一般,一点点拼接构成...

阅读(33)评论(0)赞 (0)

Java

JVM内存模型

3

刘莉莉 发布于 2018-04-17

JVM回顾 JVM = 类加载器(classloader) + 执行引擎(execution engine) + 运行时数据区域(runtime data area) 运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都...

阅读(20)评论(0)赞 (0)

Java

金三银四跳槽季,阿里面试刚回来的总结—干货!

3

changyuan.xu 发布于 2018-04-17

终端研发部 关注并回复“1024”,加入技术交流群,致力于技术开发! 学习更多的面试题,可参考《 金三银四的面试黄金季节,Android面试题来了! 》,再往下看, 来自阿里面试者的两位总结。   前言: 金三已经过去,现在是银四,据我了解,好多人都会在三月份选择跳槽,...

阅读(32)评论(0)赞 (0)

编程技术

一步步图解G1

11

songhua.gao 发布于 2018-04-16

G1在堆上分配内存和其他的GC有点不一样。现在我们来一步一步看下G1系统。 1、 G1堆结构 G1的堆结构就是把一整块内存区域切分成多个固定大小的块。 在JVM在启动时来决定每个小块,也就是region的大小。 JVM一般是把一整块堆切分成2000个小region。然后每个小re...

阅读(20)评论(0)赞 (0)

Java

一步步图解G1

11

hellas 发布于 2018-04-16

G1在堆上分配内存和其他的GC有点不一样。现在我们来一步一步看下G1系统。 1、 G1堆结构 G1的堆结构就是把一整块内存区域切分成多个固定大小的块。 在JVM在启动时来决定每个小块,也就是region的大小。 JVM一般是把一整块堆切分成2000个小region。然后每个小re...

阅读(18)评论(0)赞 (0)

Java

Java层与Jni层的字节数组传递【适用于其他基本类型数组】

6

songhua.gao 发布于 2018-04-13

Android开发中,经常会在Java代码与Jni层之间传递数组(byte[]),一个典型的应用是Java层把需要发送给客户端的数据流传递到Jni层,由Jni层的Socket代码发送出去,当然,Jni层也需要把从Socket接收到的数据流返回给Java层。我简单地总结了一下,从J...

阅读(30)评论(0)赞 (0)

Java

2018年一线互联网公司Java高级面试题总结

3

邓龙华 发布于 2018-04-12

1、hashcode相等两个类一定相等吗?equals呢?相反呢? 2、介绍一下集合框架? 3、hashmap hastable 底层实现什么区别?hashtable和concurrenthashtable呢? 4、hashmap和treemap什么区别?低层数据结构是什么? 5...

阅读(155)评论(0)赞 (0)

Java

关于Java代码优化的N条建议!

31

xiaoli.he 发布于 2018-04-08

本文是作者: 五月的仓颉  结合自己的工作和平时学习的体验重新谈一下为什么要进行代码优化。在修改之前,作者的说法是这样的: 就像鲸鱼吃虾米一样,也许吃一个两个虾米对于鲸鱼来说作用不大,但是吃的虾米多了,鲸鱼自然饱了。 代码优化一样,也许一个两个的优化,对于提升代码的运行...

阅读(23)评论(0)赞 (0)

Java

JVM学习–对象内存的分配策略

1

xiaoli.he 发布于 2018-04-08

Java所承诺的自动内存管理主要是针对对象内存的回收和对象内存的分配。 在Java虚拟机的五块内存空间中,程序计数器、Java虚拟机栈、本地方法栈内存的分配和回收都具有确定性,一般在编译阶段就能确定需要分配的内存大小,并且由于都是线程私有,因此它们的内存空间都随着线程的创建而创建...

阅读(31)评论(0)赞 (0)

Java

Java 内存泄漏分析和对内存设置

4

changyuan.xu 发布于 2018-04-07

为了判断 Java 中是否有内存泄漏,我们首先必须了解 Java 是如何管理内存的。下面我们先给出一个简单的内存泄漏的例子,在这个例子中我们循环申请 Object 对象,并将所申请的对象放入一个 HashMap 中,如果我们仅仅释放引用本身,那么 HashMap 仍然引用该对象,...

阅读(41)评论(0)赞 (0)

Java

常用的HashMap到底是个什么结构

邓龙华 发布于 2018-04-07

HashMap 是最常用的容器之一,应该没什么疑问了。可你到底了解他吗?网上已经有很多文章来总结 HashMap 了,我来写这篇,主要是为了记录自己阅读之后的一点点小感悟,如若有错误的地方,请大家指正。下文分析基于 jdk1.8 。 0x01 一句话介绍 HashMap 内部是一...

阅读(33)评论(0)赞 (0)

Java

JDK 10 的 109 项新特性

2

likai 发布于 2018-04-05

戳上面的蓝字关注我们哦! 精彩内容  精选java等全套视频教程 精选java电子图书 大数据视频教程精选 java项目练习精选 来源:开源中国, www.oschina.net/translate/109-new-features-in-jdk-10 虽然感觉 JDK...

阅读(38)评论(0)赞 (0)