- 浏览: 4659 次
- 性别:
- 来自: 株洲
最新评论
文章列表
Java程序性能优化 - JVM内存分配参数
- 博客分类:
- 读书笔记
主要的JVM内存参数:
-Xms:设置Java应用程序启动时的初始堆大小
-Xmx:设置Java应用程序能获得的最大堆大小
-Xss:设置线程栈大小
-XX:MinHeapFreeRatio:设置堆空间最小空闲比例。当堆空间的空闲内存小于这个数值时,JVM将会拓展堆空间
-XX:MaxHeapFreeRatio:设置堆空间最大空闲比例。当堆空间的空闲内存大于这个数值时,JVM将会压缩堆空间
-XX:NewSize:设置新生代大小
-XX:NewRatio:设置老年代和新生代的比例
-XX:SurviorRatio:设置新生代中eden区与survivior区的比例
-XX: ...
在《Java程序性能优化》3.12小节用一个例子说明在Java 6之前的版本(Java 7中已经解决)使用subString方法可能会带来性能的问题,但是并没有说明为什么会出现性能问题,我从JVM内存模型层面试着分析这个问题。
源代码:
public class Test {
public static void main(String[] args) {
List<String> handler = new ArrayList<String>();
for (int i = 0; i < 1000; i++) {
H ...
如何判断两个日期区间是否重叠
- 博客分类:
- 算法
问题:
假设有两个日期区间(StartDate, EndDate),其中,日期区间的开始时间与结束时间均可以为空。如果开始时间为空,则表示接近无限小;如果结束时间为空,则表示接近无线大。如何判断这两个日期区间是否发生重叠?
JS实现:
var a = {
startDate : '',
endDate : ''
}
var b = {
startDate : '',
endDate : ''
}
function isOverlapDate(dateRange_a, dateRange_b) {
var a_start ...
Git配置文件的存储路径
Git自带的git config工具可以用来控制Git的外观和行为的配置变量。这些变量存储在三个不同的位置。优先级顺序为:仓库 > 用户 > 系统。
1. /etc/gitconfig文件:包含系统中每一个用户及仓库的通用配置。如果使用--system选项的git config命令时,Git会从本文件中读取变量。
2. ~/.gitconfig或者~/.config/git/config文件:针对当前用户。如果使用--global选项的git config命令时,Git会从本文件中读取变量。
3. 当前仓库下.git/config文件。
...