java FILE

2020-7-21 杨静

Java中File类的使用','一、File类常用API介绍内容见代码和注释package com.liuyanzhao;import java.io.File;import java.io.IOException;/* * * @author WellsLiu * */public class Test {    public static void main(String[] args)&nb...

阅读全文>>

评论(0) 浏览(1262)

相对路径

2020-7-21 杨静

java中ImageIcon路径问题','一、问题ImageIcon icon = new ImageIcon(\"logo.jpg\");执行结果是icon无法显示 二、解决类中有如下调用:ImageIcon icon = new ImageIcon(\"1.jpg\"); 很自然地认为当前类文件和图片在同一路径下即可。其实所谓的相对路径起点是工程的根目录,即project。这行代码执行时在project目录下查找名为a.gif的文件,结果当然是找不到。要得到工程的相对路径可通过System.getProperty(\"user.dir\")得到。对图片和对文件的查找应该...

阅读全文>>

评论(0) 浏览(1369)

linux常用命令

2020-7-21 杨静

linux命令大全','系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/mem...

阅读全文>>

评论(0) 浏览(12400)

java虚拟机参数说明

2020-7-21 杨静

java虚拟机参数说明','

 

\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\nA\r\n内存管理参数
\r\nDisableExplicitGC\r\n默认关闭\r\n忽略来自System.gc()方法触发的垃圾收集
\r\nExplicitGCInvokesConcurrent\r\n默认关闭\r\n当收到System.gc()方法提交的来机收集申请时,使用CMS收集器进行收集
\r\nUseSerialGC\r\nClient模式的虚拟机默认开启,其他模式关闭\r\n虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial + Serial Old的收集器组合进行内存回收
\r\nUseParNewGC\r\n默认关闭\r\n打开此开关后,使用ParNew + Serial Old的收集器组合进行内存回收
\r\nUseConcMarkSweepGC\r\n默认关闭\r\n打开此开关后,使用ParNew + CMS + Serial Old的收集器组合进行内存回收.如果CMS收集器出现Concurrent Mode Failure,则Serial Old收集器将作为后备收集器
\r\nUseParallelGC\r\nServer模式的虚拟机默认开启,其他模式关闭\r\n虚拟机运行在Server模式下的默认值,打开此开关后,使用Parallel Scavenge + Serial Old的收集器组合进行内存回收
\r\nUseParallelOldGC\r\n默认关闭\r\n打开此开关后,使用Parallel Scavenge + Parallel Old的收集器组合进行内存回收
\r\nSurvivorRatio\r\n默认为8\r\n新生代中Eden区域与Survivor区域的容量比
\r\nPretenureSizeThreshold\r\n无默认值\r\n直接晋升到老年代的对象大小,设置这个参数后,大于这个参数的对象将直接在老年代分配
\r\nMaxTenuringThreshold\r\n默认值为15\r\n晋升到老年代的对象年龄,每个对象在坚持过一次Minor GC之后,年龄就+1,当超过这个参数值时就进入老年代
\r\nUseAdaptiveSizePolicy\r\n默认开启\r\n动态调整java堆中各个区域的大小及进入老年代的年龄
\r\nHandlePromotionFailure\r\njdk1.5及以前是默认关闭,jdk1.6默认开启\r\n是否允许分配担保失败,即老年代的剩余空间不足以应付新生代的整个Eden和Survivor区的所有对象都存活的极端情况
\r\nParallelGCThreads\r\n少于或等于8个CPU时默认值为CPU数量值,多于8个CPU时比CPU数量值小\r\n设置并行GC时进行内存回收的线程数
\r\nGCTimeRatio\r\n默认值99\r\nGC时间占总时间的比率.仅在使用Parallel Scavenge收集器时生效
\r\nMaxGCPauseMills\r\n无默认值\r\n设置GC最大停顿时间.仅在使用Parallel Scavenge收集器时生效
\r\nCMSInitiatingOccupancyFraction\r\n默认值68\r\n设置CMS收集器在老年代空间被使用多少后触发垃圾收集
\r\nUseCMSCompactAtFullCollection\r\n默认开启\r\n设置CMS收集器在完成垃圾收集后是否要进行一次内存碎片整理
\r\nCMSFullGCsBeforeCompaction\r\n无默认值\r\n设置CMS收集器在进行若干次垃圾收集后再启动一次内存碎片整理
\r\nScavengeBeforeFullGC\r\n默认开启\r\n在Full GC发生之前触发一次Minor GC
\r\nUseGCOverheadLimit\r\n默认开启\r\n禁止GC过程无限制的执行,如果过于频繁,就直接发生OutOfMemory
\r\nUseTLAB\r\nServer模式默认开启\r\n优先在本地线程缓冲区中分配对象,避免分配内存时的锁定过程
\r\nMaxHeapFreeRatio\r\n默认值70\r\n当Xmx值比Xms值大时,堆可以动态收缩和扩展,这个参数控制当堆空闲大于指定比率时自动收缩
\r\nMinHeapFreeRatio\r\n默认值40\r\n当Xmx值比Xms值大时,堆可以动态收缩和扩展,这个参数控制当堆空闲小于指定比率时自动收缩
\r\nMaxPermSize\r\n大部分情况下默认值是64MB\r\n永久代的最大值
\r\nB\r\n即时编译参数
\r\nCompileThreshold\r\nClient模式下默认值1500,Server模式下默认值10000\r\n触发即时编译的阈值
\r\nOnStackReplacePercentage\r\nClient模式下默认值933,Server模式下140\r\nOSR比率,它是OSR即时编译阈值计算公司的一个参数,用于代替BackEdgeThreshold参数控制回边计数器的实际溢出阈值
\r\nReservedCodeCacheSize\r\n大部分情况下默认值32MB\r\n即时编译器编译的代码缓存使得最大值
\r\nC\r\n类型加载参数
\r\nUseSplitVerifier\r\n默认开启\r\n使用依赖StackMapTable信息的类型检查代替数据流分析,以加快字节码校验速度
\r\nFailOverToOldVerifier\r\n默认开启\r\n当类型校验失败时,是否允许回到老的类型推到校验方式进行校验,如果开启则允许
\r\nRelaxAccessControlCheck\r\n默认开启\r\n在校验阶段放松对类型访问性的限制
\r\nD\r\n多线程相关参数
\r\nUseSpinning\r\njdk1.6默认开启,jdk1.5默认关闭\r\n开启自旋锁以免线程频繁的挂起和唤醒
\r\nPreBolckSpin\r\n默认值10\r\n使用自旋锁时默认的自旋次数
\r\nUseThreadPriorities\r\n默认开启\r\n使用本地线程优先级
\r\nUseBiasedLocking\r\n默认开启\r\n是否使用偏向锁,如果开启则使用
\r\nUseFastAccessorMethods\r\n默认开启\r\n当频繁反射执行某个方法时,生成字节码来加快反射的执行速度
\r\nE\r\n性能参数
\r\nAggressiveOpts\r\njdk1.6默认开启,jdk1.5默认关闭\r\n使用激进的优化特征,这些特征一般是具备正面和负面双重影响的,需要根据具体应用特点分析才能判定是否对性能有好处
\r\nUseLargePage\r\n默认开启\r\n如果可能,使用大内存分页,这项特性需要操作系统的支持
\r\nLargePageSizeInBytes\r\n默认值4MB\r\n使用指定大小的内存分页,这项特性需要操作系统的支持
\r\nStringCache\r\n默认开启\r\n是否使用字符串缓存,开启则使用
\r\nF\r\n调试参数
\r\nHeapDumpOnOutOfMemoryError\r\n默认关闭\r\n在发生内存溢出异常时是否生成堆转储快照,关闭则不生成
\r\nOnOutOfMemoryError\r\n无默认值\r\n当虚拟机抛出内存溢出异常时,执行指令的命令
\r\nOnError\r\n无默认值\r\n当虚拟机抛出ERROR异常时,执行指令的命令
\r\nPrintClassHistogram\r\n默认关闭\r\n使用[ctrl]-

阅读全文>>

评论(0) 浏览(1126)

NIO|AIO

2020-7-21 杨静

NIO 与 AIO','NIO1. NIO会将数据准备好后,再交由应用进行处理,数据的读取/写入过程依然在应用线程中完成,只是将等待的时间剥离到单独的线程中去。\r\n2. Selector可以复用,节省数据准备时间AIO\r\nAIO的特点:\r\n1. 读完了再通知我\r\n2. 不会加快IO,只是在读完后进行通知\r\n3. 使用回调函数,进行业务处理在NIO的基础上,看AIO,区别在于AIO是等读写过程完成后再去调用回调函数。\r\nNIO是同步非阻塞的\r\nAIO是异步非阻塞的\r\n由于NIO的读写过程依然在应用线程里完成,所以对于那些读写过程时间长的,NIO就不太适合。\r\n...

阅读全文>>

评论(0) 浏览(1073)