软引用 SoftReference

软引用 SoftReferenceimportjava lang ref SoftReferenc 软引用 demo 和使用 redis 缓存类似 先查内存中是否缓存 有则直接内存获取 反之则重新创建 再装载入内存中缓存起来 在一些开源框架中经常使用 author tiger create 2021 09 1220 34 publicclassS publicstatic String args Tigerti

软引用

软引用demo,和使用redis缓存类似,先查内存中是否缓存,有则直接内存获取,反之则重新创建,再装载入内存中缓存起来。在一些开源框架中经常使用

import java.lang.ref.SoftReference; / * 软引用demo,和使用redis缓存类似, * 先查内存中是否缓存,有则直接内存获取,反之则重新创建, * 再装载入内存中缓存起来。 * 在一些开源框架中经常使用 * * @author: tiger * @create: 2021-09-12 20:34 */ public class SoftReferenceDemo { 
    public static void main(String[] args) { 
    Tiger tiger = new Tiger(); // 业务代码... SoftReference<Tiger> sr = new SoftReference<>(tiger); tiger = null; // 下次使用 if (null != sr) { 
    tiger = sr.get(); } else { 
    // GC可能内存不足,回收了tiger的软引用 // 因此需要重新装载 tiger = new Tiger(); sr = new SoftReference<>(tiger); } } } class Tiger { 
    private String id; private String name; private String age; private Integer type; public String getId() { 
    return id; } public void setId(String id) { 
    this.id = id; } public String getName() { 
    return name; } public void setName(String name) { 
    this.name = name; } public String getAge() { 
    return age; } public void setAge(String age) { 
    this.age = age; } public Integer getType() { 
    return type; } public void setType(Integer type) { 
    this.type = type; } @Override public String toString() { 
    return "Tiger{" + "id='" + id + '\'' + ", name='" + name + '\'' + ", age='" + age + '\'' + ", type=" + type + '}'; } } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233982.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 堆栈的声明_Java 堆栈[通俗易懂]

    java 堆栈的声明_Java 堆栈[通俗易懂]Java堆栈堆栈是一种线性数据结构,用于存储对象的集合。它基于先进先出(LIFO)。Java集合框架提供了许多接口和类来存储对象的集合。其中之一是Stack类,它提供了不同的操作,例如推,弹出,搜索等。在本节中,我们将讨论JavaStack类,其方法和实现在Java中的堆栈数据结构程序。但是在转到JavaStack类之前,请先快速了解堆栈的工作原理。堆栈数据结构具有两个最重要的操作,分别…

    2022年7月7日
    21
  • Centos下安装yum(完整教程)

    Centos下安装yum(完整教程)在安装yum的时候发现网上的方法参差不齐,不是很完整,以下是个人亲测,同时是总结出的最方便的方法,希望能帮助到大家!查看已安装的yumrpm-qa|grepyum删除已有的yumrpm-aq|grepyum|xargsrpm-e–nodeps下载以下安装包wgethttp://tel.mirrors.163.com/centos/7/os/x86_64/Packages/python-2.7.5-89.el7.x86_64.rpmwgethttp:.

    2022年6月4日
    180
  • win10 elasticsearch安装IK中文分词器

    win10 elasticsearch安装IK中文分词器

    2022年2月20日
    98
  • 快速入门UML时序图「建议收藏」

    快速入门UML时序图「建议收藏」使用UML时序图重构代码使用UML时序图时序图是什么时序图的元素组合块(CombinedFragment)举例使用UML时序图最近,在重构项目中的老代码的时候,业务复杂,文档缺失。抽丝剥茧,沉迷在剪不断理还乱的纷繁的关系中,像是苏东坡诗中的那只高贵的乌鸦先生找不到落脚之处。披沙拣金,终于理出一点头绪,生怕忘了,赶紧记下来,又苦于没有好的方式去表达这些错杂的关系,蓦然发现,UML时序图是表达业…

    2022年6月29日
    36
  • [转]EntityFramework之领域驱动设计实践

    [转]EntityFramework之领域驱动设计实践

    2021年9月7日
    65
  • nginx 优雅重启_查看nginx是否启动

    nginx 优雅重启_查看nginx是否启动#1.检测修改过后的配置文件是否有错误 /usr/local/nginx/sbin/nginx-t #如果没问题会返回: #nginx:theconfigurationfile/usr/local/nginx/conf/nginx.confsyntaxisok #nginx:configurationfile/usr/local/nginx/conf/nginx.conftestissuccessful#2.平滑重启 /usr/local/nginx/s

    2022年8月13日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号