7 江湖人称小白哥

尚未进行身份认证

从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事

等级
博文 99
排名 5k+

OpenJDK系列(四):从JVM谈C/C++编译流程

编译器的这点事gcc和g++还傻傻分不清楚?clang与gcc有什么关系?llvm又是什么?下面将对一些常见的名词进行说明以免在后续阅读中感到疑惑.gcc和g++gcc即GNUCCompiler,刚开始它就是一个c编译器项目。后来越来越多的其他语言编译器也被添加到这个项目中,如用于编译c++代码的cc1plus.此时的gcc代表的是一堆编译器的集合(theGNUCompiler...

2018-09-29 23:19:20

OpenJDK系列(三):VM对CAS的设计与实现

CAS简介CAS即Compare-and-Swap的缩写,即比较并交换,它是一种实现乐观锁的技术.在CAS中包含三个操作数:V:需要读写的内存位置,从java角度你可以把它当成一个变量A:预期值,也就是要进行比较的值B:拟写入的新值当且仅当V的值等于A时,CAS才会通过原子方式用新值B来更新V的值,否则不会执行任何操作.无论位置V的值是否等于A,最终都会返回V原有的值.换...

2018-09-10 16:37:18

OpenJDK系列(二):从ClassFileParser谈Endian

EndianEndian即所谓的字节序,通俗点说就是多于一个类型的数据在内存中存取的顺序目前有两种字节序.Big-Endian:也称为大端序:高位字节存放在内存的低地址端,低位字节存放在内存的高地址端.Little-Endian:也称为小端序:高位字节存放在内存的高地址端,低位字节存放在内存的低地址端.Endian与内存单元对于0x12345678而言,1234是高四...

2018-09-05 17:03:29

TensorFlow学习笔记(一)

最近致力于深度学习,希望在移动领域能够找出更多的应用点.其中TensorFlow作为目前的一个热点值得我们重点关注.

2017-05-12 23:15:49

Android应用优化指南

对我们技术从业者而言,很多时候时候不是我们不知道怎么做,而是不知道做什么?今天系统的总结自己关于如何对Android应用进行优化的一些经验,共计八个维度.

2017-03-16 18:24:32

Android 7.0应用冷启动流程分析

最近在为自己一部MotoG定制Rom,顺便重新读了一遍Android7.0的相关源码,特此记录当做笔记.在开始正文之前,首先要明白冷启动和热启动.

2017-03-05 13:06:44

不一样的视角:从JVM内存模型谈线程安全

从内存模型谈线程安全

2017-02-28 00:40:38

Android 7.0系统启动流程分析

简单的分析Android7.0系统启动流程

2017-02-27 00:31:06

求职与面试(一):Android必备

前几天整理了Java面试题集合,今天再来整理下Android相关的面试题集合.如果你希望能得到最新的消息,可以关注https://github.com/closedevice/interview-about,我会不断的增加和修正相关问题的描述.

2017-02-26 12:35:55

Python多线程入门指南

一直懒得写Python相关的文章,恰好有天需要简单的给童鞋们讲点课,仓促之余就诞生了此文.今天本来准备全面的聊聊有关高性能并发这个话题来着,但是周末马上要来了啊.所以我就取了其中的一点来介绍,关于其他的方面,有兴趣的小伙伴可以和我交流.

2017-02-25 21:48:54

谈乱序执行和内存屏障

十多年前的程序员对处理器乱序执行和内存屏障应该是很熟悉的,但随着计算机技术突飞猛进的发展,我们离底层原理越来越远,这并不是一件坏事,但在有些情况下了解一些底层原理有助于我们更好的工作,比如现代高级语言多提供了多线程并发技术,如果不深入下来,那么有些由多线程造成问题就很难排查和理解.

2017-02-22 19:21:15

求职与面试(一):Java必备

今天要谈的主题是关于求职.求职是在每个技术人员的生涯中都要经历多次,对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦.在跳槽季来临之前,特地做这个系列的文章,一方面帮助自己巩固下基础,另一方面也希望帮助想要换工作的朋友.

2017-02-19 23:07:51

一个程序员的日常书单(更新于2018/10/7)

今日元宵节,祝各位节日快乐.本想谈谈读书这个话题,想来想起觉得无从下手,就此作罢.毕业这几年,一直不敢放松,在现代这个互联网时代更加认同萧抡谓的”一日不读书,胸臆无佳想;一月不读书,耳目失清爽”.如果非要给自己找个读书的理由的话,这句诗就是最好的理由:”胸藏文墨虚若骨,腹有诗书气自华”.

2017-02-11 23:59:51

来自Unix/Linux的编程启示录

写本文的最初灵感源于16年11月份我将工作环境切换到MacOS上,其中一些使用"差异"让我开始对Unix/Linux中设计产生了浓厚的兴趣.虽然从13年开始使用redhat,再到后来一直使用的ubuntu,但却从来关注过这些,特此记录.

2017-02-08 04:46:00

年轻人谈独处和自律

这个话题有点老套,甚至是无聊.在开始写之前,我问自己:你还这么年轻,有什么资格谈独处和自律?想想未成仙前也论道,也就有了这篇不成熟的文章也,作为2016年的一个小结.

2017-01-05 22:21:24

拓展篇:注解处理器最佳实践

在基础篇中,我们介绍了什么是注解以及如何开发注解处理器,今天就来说说在开发编译时注解处理器中的那些最佳实践。

2016-12-31 19:25:29

基础篇:带你从头到尾玩转注解

一起玩转高端大气上档次的Annotation。要玩就玩的痛快,从头到位带你了解Annotation以及自己动手编写注解处理器。

2016-12-25 22:35:45

Android 开发:由模块化到组件化(一)

当你看到这的时候,想必心理一阵恶寒:模块化?组件化?到底是什么鬼?有啥区别.有这种感觉才是对的,模块化和组件化本质思想是一样的,都是"大化小",两者的目的都是为了重用和解耦,只是叫法不一样.如果非要说区别,那么可以认为模块化粒度更小,更侧重于重用,而组件化粒度稍大于模块,更侧重于业务解耦.

2016-12-15 01:43:15

随想录:开发一流Android SDK

目前更多开发者热衷于应用开发,极少数的开发者才有机会从事SDK开发工作,而市面上关于SDK开发介绍的文章少之又少,以至于让大家觉得SDK开发是相对比较难而且非常无聊的工作,今天我们就来简单的聊聊SDK开发的哪点事.

2016-12-10 13:59:32

打造RxJava生命周期管理框架RxLife

在前边RxJava实战技巧大全一文中,我们介绍了RxJava使用过程中常见的应用场景和可能遇到的问题,其中我们谈到利用RxLifeCycle来管理RxJava的生命周期,避免内存泄漏问题,今天自己动手打生命周期管理框RxLife来加深对RxJava的认识。

2016-11-04 01:30:22
CSDN身份
  • 博客专家
奖章
  • Github
    Github
    绑定github第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!