最新文章列表

再看SoftReference和WeakReference

java中的SoftReference和WeakReference已经出来很久了,但是到现在为止开发的程序里几乎都没有直接用到它们。 用不到,那就说明还没有碰到需要用它们的场景,当然也有一个原因,就是不知道怎么用。   简单来说,java中的引用默认都是强引用,只要当引用存在(就是能从根引用遍历到),GC就不会回收。 有时候,我们无法自己决定还要不要用一个实例,可能需要根据情况决定,那么 ...
weiqingfei 评论(0) 有760人浏览 2016-02-26 14:52

深入探讨 java.lang.ref 包

  回顾了一下三年多前写的文章https://www.ibm.com/developerworks/cn/java/j-lo-langref/,发现还是有一些错误之处,转载于此,并一并改正。   概述   Java.lang.ref 是 Java 类库中比较特殊的一个包,它提供了与 Java 垃圾回收器密切相关的引用类。这些引用类对象可以指向其它对象,但它们不同于一般的引用,因为它们的 ...
leonzhx 评论(0) 有1088人浏览 2014-02-25 19:58

不只是给面试加分 -- Java WeakReference的理解与使用

前言: 看到篇帖子, 国外一个技术面试官在面试senior java developer的时候, 问到一个weak reference相关的问题. 他没有期望有人能够完整解释清楚weak reference是什么, 怎么用, 只是期望有人能够提到这个concept和java的GC相关. 很可惜的是, 20多个拥有5年以上java开发经验的面试者中, 只有两人知道weak reference的存在 ...
自治州 评论(9) 有30894人浏览 2014-01-23 19:03

java.uitl.WeakHashMap

在上篇文章中我提到过java.lang.ref.Reference类,这个东西有点用。 http://wangxinchun.iteye.com/blog/1954187 今天我就介绍下jdk中关于这块的一个应用:WeakHashMap,一个永不满的hashmap,一个和垃圾回收器相依相偎的缓存Map。 先看一个例子: package com.qunar.flight.tts.policy.c ...
王新春 评论(0) 有1208人浏览 2013-10-11 18:56

ThreadLocal使用及原理解析

  1.ThreadLocal干什么的?       我们知道,在多线程程序中,同一个线程在某个时间段只能处理一个任务.我们希望在这个时间段内,任务的某些变量能够和处理它的线程进行绑定,在任务需要使用这个变量的时候,这个变量能够方便的从线程中取出来.ThreadLocal能很好的满足这个需求,用ThreadLocal变量的程序看起来也会简洁很多,因为减少了变量在程序中的传递.   2 ...
liudeh_009 评论(0) 有9936人浏览 2013-08-31 16:48

android 在UI线程之外处理Bitmap - 开发文档翻译

由于本人英文能力实在有限,不足之初敬请谅解 本博客只要没有注明“转”,那么均为原创,转贴请注明本博客链接链接   Processing Bitmaps Off the UI Th ...
su1216 评论(0) 有3421人浏览 2013-08-12 13:30

Android内存管理-SoftReference的使用

Android内存管理-SoftReference的使用    很多时候我们需要考虑Android平台上的内存管理问题,Dalvik VM给每个进程都分配了一定量的可用堆内存,当我们处理一些耗费资源的操作时可能会产生OOM错误(OutOfMemoryError)这样的异常,Android123观察了下国内的类似Market客户端设计,基本上都没有采用很好的内存管理机制和缓存处理。   如果细 ...
miaowei 评论(0) 有1366人浏览 2013-03-25 14:39

Java 引用方式

    Java中的引用方式有StrongReference, SoftReference, WeakReference和PhantomReference。先来看一个来mindprod 的一个图表: Soft vs Weak vs Phantom References Type Purpose Use When GCed Implementing Class ...
wangleyiang 评论(0) 有1378人浏览 2012-11-21 11:43

java对象软、弱和虚引用

java.lang.ref包下提供了三个类SoftReference,phantomReference WeakReference,分别代表软引用,虚引用和弱引用 C#中没有这些概念 强引用,最常见的引用,程序创建一个对象,并把这个对象赋值给一个引用变量,通过该引用来实际操作对象 软引用,需要通过SoftReference类来实现,当一个对象只有一个软引用,它有可能被垃圾回收机制回收。内存空间足够时 ...
liujiawinds 评论(0) 有1583人浏览 2012-04-13 20:07

java 内存回收

三种引用: 软引用,虚引用和弱引用 SoftReference, PhantomaReference, WeakReference 对象可获取程度分为五种: strongly reachable, softly reachable、 weakly reachable、 phantomly reachable、 unreachable 弱引用和软引用的区别是决定清空和将加入队列的时间点不同: S ...
perfy315 评论(0) 有1330人浏览 2012-04-12 15:07

Java 强、软、弱、虚引用

1.对象的强、软、弱和虚引用    在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可 ...
trinityblood 评论(0) 有1425人浏览 2012-02-15 11:15

java的引用探讨

Reference 是一个抽象类,而 SoftReference,WeakReference,PhantomReference 以及 FinalReference 都是继承它的具体类。 接下来我们来分别介绍和分析强引用以及 java.lang.ref 包下各种虚引用的特性及用法。 StrongReference, SoftReference, WeakReference 以及 PhantomRef ...
liufei.fir 评论(0) 有1127人浏览 2011-12-18 16:03

内存优化的两个类:weakReference、 softReference

如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference 记住此对象,以便随时观察,但是却因此造成此对象的 reference 数目一直无法为零, 使得对象无法被清除。  java.lang.ref.WeakReference   不过,现在有了 Weak Reference 之后,这就可以迎刃而解了。如果你希望能随时取得某对象的信息,但又不 ...
guojianhui0906 评论(0) 有1098人浏览 2011-12-03 11:42

【转】SoftReference 和 WeakReference

Java 和 Android 内存优化的两个类:SoftReference 和 WeakReference Posted on 2010-10-22 00:55 charley_yang 阅读(436) 评论(0) 编辑 收藏  如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference 记住此对象,以便随时观察,但是却因此造成此对象的 refer ...
zhanhao 评论(0) 有1600人浏览 2011-10-10 10:45

Java中软引用、弱引用和虚引用的使用方法示例

在Java引用中,使用最多的无疑是强引用类型,对于其余三种级别的引用类型用得比较少。它们使用的方式与强引用也有些区别。下面使用一个例子来介绍一下其余三种引用(包括软引用、弱引用和虚引用)的使用方法。 import java.lang.ref.*; import java.util.*; class Grocery { private static final in ...
YuHuang.Neil 评论(0) 有10521人浏览 2011-09-12 20:28

关于漫谈设计模式4.2.3章节的一点申明

之前比较懒,对ThreadLocal代码未做细细研究,而是受一些影响,而导致对其产生了一些误解,最近考略到jvm对classloader的回收问题时,我才意识到可能犯了一个错误,我把这个错误写在博文里,链接是http://redhat.iteye.com/blog/1057974,读者可以查阅该文章,关于这个章节的一点错误,如果我的书籍能够出版的话,我将在里面进行更新,或者我会给出新版本电子书籍,如 ...
redhat 评论(3) 有4541人浏览 2011-05-25 11:22

ThreadLocal的误解

可能大部分人的想法和我当初的想法一样,都是以为在ThreadLocal里使用一个Map,这个Map的键为Thread,值为绑定的变量。其实如果这样做是有问题的: 1. 就是当线程回收时,该线程绑定的变量不能被自动的回收,因为变量存储在ThreadLocal里,必须显式的去回收。如果此变量存储在线程里,那么线程回收时,这个变量没有被其他引用指向的话,它便随着线程一起回收。 2. 另外不这样做还有一个好 ...
redhat 评论(12) 有13458人浏览 2011-05-25 11:14

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics