- 博客(20)
- 收藏
- 关注
原创 关于SoftReference
首先SoftReference的用处是增强一个引用常驻在内存的能力。也就是说一个引用比如A a=new A();此时如果你把a=null;那么在不久之后的某个时间点,java虚拟机的内存回收机制就会把这个引用所占用的内存释放掉。如果有时候,我们想让一个引用常驻内存而不是被回收,则可以用到softreference,比如上文的a引用。用:SoftReference sr=new Soft
2015-05-18 17:18:31
580
原创 四种内存管理类及用法
StrongReference, SoftReference, WeakReference 以及 PhantomReference 的特性及用法StrongReference:我们都知道 JVM 中对象是被分配在堆(heap)上的,当程序行动中不再有引用指向这个对象时,这个对象就可以被垃圾回收器所回收。这里所说的引用也就是我们一般意义上申明的对象类型的变量(如 String, Object
2015-05-18 16:28:40
409
转载 Java 理论与实践: 用弱引用堵住内存泄漏
虽然用 Java™ 语言编写的程序在理论上是不会出现“内存泄漏”的,但是有时对象在不再作为程序的逻辑状态的一部分之后仍然不被垃圾收集。本月,负责保障应用程序健康的工程师 Brian Goetz 探讨了无意识的对象保留的常见原因,并展示了如何用弱引用堵住泄漏。要让垃圾收集(GC)回收程序不再使用的对象,对象的逻辑 生命周期(应用程序使用它的时间)和对该对象拥有的引用的实际 生命周期必须是相同的。
2015-05-18 16:14:43
370
转载 垃圾收集器与Java编程
垃圾收集器(Garbage Collector,GC)对Java程序员来说,基本 上是透明的,但是一个优秀的Java程序员必须了解GC的工作原理、如何优化GC的性能、如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统、实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能。本篇文章首先简单介绍GC的工作原理之后,然后再对GC的几个关键问题进行深入探讨,最后提出
2015-05-18 15:17:40
382
转载 Understanding Weak References
Understanding Weak ReferencesPosted by enicholas on May 4, 2006 at 5:06 PM PDTSome time ago I was interviewing candidates for a Senior Java Engineer position. Among the many questions I asked was
2015-05-18 14:54:54
350
原创 Win7英文64位系统安装Ubuntu14.04LTS后直接进入Ubuntu
硬件:lenovo E430问题原因:ntfs分区的引导扇区被grub写坏,必须重新恢复该引导扇区。已经安装了64位英文版win7,今天用u盘安装Ubuntu14.04LTS。安装过程一切正常,安装后重启发现没有grub os选择窗口,直接进入ubuntu。短暂的迷惑后,怀疑grub安装或配置出现问题,百度后发现了解决办法。sudo fdisk -lu //显示当前的硬盘及所属分
2014-11-27 15:19:49
806
转载 Java的网络编程
java关于网络编程的API,类不多,但是要熟练的、深入的掌握,需要下很足功夫,多多练习 网络编程:简单的说,就是使两台计算机能够互相通讯数据而已。 网络通讯:就是网络上计算机直接或间接地通过网络协议与其他计算机进行通讯。 网络协议: TCP/IP Transmission Control Protocol 传输控制协议
2014-10-17 10:54:02
363
转载 如何终止java线程
终止线程的三种方法 有三种方法可以使终止线程。 1. 使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。 2. 使用stop方法强行终止线程(这个方法不推荐使用,因为stop和suspend、resume一样,也可能发生不可预料的结果)。 3. 使用interrupt方法中断线程。 1. 使用退出标志终止线程
2014-08-28 11:37:16
344
转载 在 JNI 编程中避免内存泄漏
JAVA 中的内存泄漏JAVA 编程中的内存泄漏,从泄漏的内存位置角度可以分为两种:JVM 中 Java Heap 的内存泄漏;JVM 内存中 native memory 的内存泄漏。Java Heap 的内存泄漏Java 对象存储在 JVM 进程空间中的 Java Heap 中,Java Heap 可以在 JVM 运行过程中动态变化。如果 Java 对象越来越多,占据 J
2014-07-23 12:20:58
500
转载 Java Native Interface: Who When Where What Why How
关于Jni的5W+1H,以前没深入,今天总结一趴
2014-07-23 10:57:27
616
转载 ubuntu12.04 gedit 打开 txt 文件乱码
在中文支持配置还不完整的Ubuntu 14.04中,使用gedit打开带有中文字符的文件有时会出现乱码的情况,这是由于gedit对字符编码匹配不正确导致的,解决方法如下:在终端中输入如下命令,然后重新打开gedit即可:gsettings set org.gnome.gedit.preferences.encodings auto-detected "['GB18030', 'GB2312
2014-07-04 11:09:49
380
转载 内存调试的东西D/dalvikvm( 809 ): GC_CONCURRENT freed
一般Java虚拟机要求支持verbosegc选项,输出详细的垃圾收集调试信息。dalvik虚拟机很安静的接受verbosegc选项,然后什么都不做。dalvik虚拟机使用自己的一套LOG机制来输出调试信息。 如果在Linux下运行adb logcat命令,可以看到如下的输出: D/dalvikvm( 745): GC_CONCURRENT freed 199K, 53% free 30
2013-08-09 11:47:59
656
转载 把NDK集成到Eclipse
在Android的游戏开发中,你迟早会发现有必要把部分代码跑得更快。用C写的Android代码比同样的Java版本,快上10~100倍。我可以证实这个事实,在我最新的3D游戏引擎中,我把部分组件用原生程序(即用C/C++写代码,编译成二进制的动态链接库文件)重写。这样带来了极大的性能提升,但我们也不得不面对这么一个事实:Eclipse对Java的开发提供了极佳的支持的同
2013-05-31 17:43:09
428
转载 常用的ubuntu第三方工具及android命令
java -jar 与javaw -jar的运行区别:跟java命令相对的,运行java命令时,会出现并保持一个console窗口, 程序中的信息可以通过System.out在console内输出,而运行javaw,开始时会出现console,当主程序调用之后,console就会消失; javaw 大多用来运行GUI程序在linux中发现 只要加一个 java -jar **.ja
2013-05-31 16:11:13
829
转载 Linux中Kill进程的N种方法
常规篇:首先,用ps查看进程,方法如下:$ ps -ef……smx 1822 1 0 11:38 ? 00:00:49 gnome-terminalsmx 1823 1822 0 11:38 ? 00:00:00 gnome-pty-helpersmx 1824 1822 0 11:38
2013-05-31 16:03:28
447
转载 Android编译系统
1. Android编译系统分析编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用脚本 envsetup.sh 里面定义了一些函数:function help()function get_abs_build_var()function
2013-05-27 10:41:41
425
转载 Ubuntu更新命令
常用的APT命令参数:apt-cache search package 搜索包apt-cache show package 获取包的相关信息,如说明、大小、版本等sudo apt-get install package 安装包sudo apt-get install package - - reinstall 重新安装包sudo apt-get -f install 修复安装"
2013-04-27 18:10:51
388
原创 STLport开源库的编译和Vs2008下的配置
Os: winxpVS: vs2008STLport: STLport-5.2.1.tar 下载地址:http://www.stlport.org/download.html今天在看代码过程中,偶然看到了STLport开源库(STLport 是一个多平台的 ANSI C++ 标准类库实现,具备很多高级特征,并且为效率,异常安全性和线程安全性做了优化,还做了许多扩展,如 hash
2013-04-23 18:42:12
824
转载 ubuntu 12.10 软件源(163 Source)
参考的是http://www.linuxidc.com/Linux/2012-10/73114.htm First Step:备份源,sudo cp /etc/apt/sources.list /etc/apt/sources.list.oldSecond Step:更换源,sudo gedit /etc/apt/sources.listdeb http:
2013-04-22 11:08:43
915
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人