`
guibin
  • 浏览: 366196 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
在MAC上查找和设置$JAVA_HOME guibin.beijing@gmail.com   最近升级了MAC OS,装了JDK7 for mac,在这里下载JDK7 for mac,装完之后发现在默认的路径下找不到JDK7的HOME,如下所示: $ which java /usr/bin/java $ ls -l /usr/bin/java lrwxr-xr-x 1 root wheel 74 Jan 4 20:24 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/ ...
在Mac上使用网络驱动器做TimeMachine备份 guibin.beijing@gmail.com 买了个网络硬盘,想把用TimeMachine把Mac上的内容备份到网络硬盘上。在Mount了网络硬盘,设置了备份的目标硬盘到网络硬盘上,然后开始Backup。过了会儿,不幸的消息弹出来了“The backup disk image could not be created....(error 45)”,竟然无法备份。尝试多次,相同的错误依旧,如果你正在经历这种悲剧,那么这篇文章就很适合你。 第一步:Enabling Time Machine for network drives 打开Ter ...
Android SQLite - close() was never explicitly called on database guibin.beijing@gmail.com 在开发Android应用过程中,如果不小心会遇到如下所示的异常: 引用 E/Database(3150): close() was never explicitly called on database ...... 解决其实很简单,只要复写activity的onDestroy函数,在onDestroy中关闭数据库即可。 @Override protected void onDestroy() ...
JMM(Java内存模型)中的核心概念 guibin.beijing@gmail.com 在JLS-Java Language Specification的17.4节详细描述了JMM(Java Memory Model),这个文档从语言学和实现JVM的角度讲非常棒,但是对于我们这些应用开发者而言理解其中的细节就有些问题。 本文中不再重复spec中那些正式的细节,下面将列出一些重要的原则和基本的概念,如synchronizes-with,happens-before。这两个概念和面向对象设计中的两个概念has-a,is-a很相似,Happens-before 和 synchronizes-wi ...
ConcurrentHashMap是如何提高并发时的吞吐性能(一) guibin.beijing@gmail.com 为并发吞吐性能所做的优化 ConcurrentHashMap使用了一些技巧来获取高的并发性能,同时避免了锁。这些技巧包括: 为不同的Hash bucket(所谓hash bucket即不同范围 ...
Java NIO 入门(四)Buffer内部原理 guibin.beijing@gmail.com 概述 在这节中,我们将关注NIO的Buffer中两个重要的组件:状态变量和访问方法。 状态变量对于前面提到的“内部计数系统”而言相当重要,每次进行完读写之后,Buffer的状态都随之改变。通过记录和跟踪这些改变,Buffer才可以把Buffer内部的资源管理好。 当你从Channel中读数据时,数据首先放到了Buffer中。在某些情况下,你可以直接把这个Buffer写入另一个Channel中,但是通常情况下,你可能想看看数据内容,这个想法可以通过方法get()实现。相似的,当你想要把原始数 ...
Java NIO 入门(三)从理论到实践:使用NIO读写 guibin.beijing@gmail.com 概述 读和写是最基础的IO处理。从Channel中读是非常简单的,我们只要创建一个Buffer,然后要求Channel往Buffer中读数据。写也很简单,也需要创建一个Buffer,把要写 ...
Java NIO 入门(二)Channels and buffers(通道和缓冲) guibin.beijing@gmail.com 概述 Channel和Buffer是NIO中最核心的对象,他们用在几乎每一个NIO的操作上。 Channel模拟了老IO包中的流的概念。所有去任何地方(或者来自任何地方)的数据都 ...
Java NIO 入门(一)Input/output: 概述 guibin.beijing@gmail.com I/O介绍 I/O即输入输出,指的是计算机和世界其他部分的接口,或者是单个程序同计算机其他部分的接口。I/O是计算机系统中的重要元素,并且大量的I/O实际上已经内建到操作系统中了。单独的程序通常都有很多I/O方面的工作要做。 在JAVA中,老的I/O是以“流/Stream”为基础概念,即所有的I/O都一个个单个字节的流动。在字节流中,每次一个字节,依次通过一个叫做Stream的对象。Stream I/O联系着计算机和外面的世界。Stream I/O也用在计算机内部,比如把一个对象转 ...
错误和异常的区别(Error vs Exception) guibin.beijing@gmail.com 今天突然有朋友问了这样一个问题,"Error" 和 "Exception"之间有啥区别?我觉得挺有意思,但是似乎又不能脱口而出。查找了一番资料之后,稍微总结了一下。 1) ...
Java垃圾回收(java GC) guibin.beijing@gmail.com GC的阶段 对每个对象而言,垃圾回收分为两个阶段:finalization和reclamation。 finalization: 指运行这个对象的finalize的方法。 reclamation: 回收被这个对象使用的内存。 GC的过程的基本步骤 首 ...
JAVA 7  新特性介绍(一)概述 guibin.beijing@gmail.com Java7将在7月28日发布。今天收到了来自Oracle的新闻快讯,得知Java7即将发布,就顺便去官网看了看,在此将其翻译分享给大家。本文大部分翻译自http://jdk7.java.net/preview/ Java7的预览 ...
AioTrade Investigation (Section E: The logic of TickerServer) guibin.beijing@gmail.com AioTrade source code: https://github.com/dcaoyuan/aiotrade The TickerServer(org.aiotrade.lib.securities.dataserver.TickerServer) is a kind of DataServer which is used to process tickers. Tickers can be from the D ...
AioTrade Investigation (Section C: Basic Data Type in AioTrade) guibin.beijing@gmail.com AioTrade source code: https://github.com/dcaoyuan/aiotrade 1. TVal org.aiotrade.lib.math.timeseries.TVal represents a cross section view at some specific time. Please keep this idea in mind, it is the basic conc ...
AioTrade Investigation (Section B: DataContract and Content) guibin.beijing@gmail.com AioTrade source code: https://github.com/dcaoyuan/aiotrade The DataContract's source code is located at  https://github.com/dcaoyuan/aiotrade/blob/master/libs/lib.math/src/main/scala/org/aiotrade/lib/math/timeserie ...
Global site tag (gtag.js) - Google Analytics