0 0

生命周期问题5

我的理解是这样的,静态变量的引用将一直在stack中,所以该引用对应的heap里的对象不会回收。
那么
1.类的静态变量生命周期是从加载该类开始到程序停止?
2.在内存吃紧情况下会不会被回收?


具体业务是我想实现这样的功能,将常用&&数据量不大&&数据不经常改动 的数据在程序启动时加载到内存(放到静态变量Map里面),更新删除数据库数据时同时更新内存,程序访问数据访问内存,不访问数据库。
请问这样是否合理?有没有更好地办法?

请各路大神指教 谢谢!
2013年11月28日 10:30

2个答案 按时间排序 按投票排序

0 0

采纳的答案

你的做法是可以的,没有问题。


如果你了解redis或者memcache的话可以用这些代替直接放入jvm内存,当然不用这些也ok

2013年11月28日 10:37
0 0

1.类的静态变量生命周期是从加载该类开始到程序停止?
是类被加载时开始 类被卸载时停止
2.在内存吃紧情况下会不会被回收?
不会 但 interned String会被回收掉一些

不过 java 8的Hotspot JVM实现中似乎会移除掉永久代 将类的元数据放在本地内存 将类的静态变量和interned String 放在java 堆中
具体可以看看这个:
http://openjdk.java.net/jeps/122

2013年11月28日 10:44

相关推荐

    本科毕业设计 传感器网络生命周期问题.zip

    【标题】:“本科毕业设计 传感器网络生命周期问题.zip”揭示了一个本科阶段的毕业设计课题,主要关注的是传感器网络的生命周期管理。传感器网络是由大量小型、智能的传感器节点组成,它们协同工作,收集环境或特定...

    UIView的生命周期

    UIView的生命周期对于理解iOS应用中视图的加载和管理至关重要。在开发iOS应用时,了解UIView及其子类的生命周期方法,可以让开发者合理地安排资源的分配和释放,优化应用的性能,以及提供更好的用户体验。 首先,...

    软件生命周期模型(共73张PPT)精选.pptx

    "软件生命周期模型" 软件生命周期模型是软件开发过程中的一个重要概念,它描述了软件从概念到交付的整个生命周期。软件生命周期模型通常包括软件需求分析、软件设计、软件实现、软件测试、软件维护等几个阶段。 ...

    浅谈Cookie的生命周期问题

    本文将深入探讨Cookie的生命周期问题,理解如何管理和控制Cookie的生存时间。 首先,Cookie的生命周期是由其“过期时间”决定的。当你在创建一个新的Cookie对象时,可以通过调用`setMaxAge()`方法来设置这个时间。...

    Ability生命周期.zip

    Ability生命周期是指从创建到销毁的过程中,Ability所经历的一系列状态变化。理解并掌握Ability的生命周期对于开发高效、稳定的HarmonyOS应用至关重要。现在,我们将深入探讨Ability生命周期及其重要概念。 1. **...

    Activity生命周期管理

    Activity的生命周期管理是Android开发中的核心概念,对于确保应用程序的稳定性和性能至关重要。本知识点主要聚焦于如何高效地管理和控制Activity的生命周期。 Activity的生命周期包括了创建(onCreate())、启动...

    [38]-16 C语言里变量的生命周期.pdf

    当子函数返回指针变量时,需要注意指针变量的生命周期问题。 ```c char* get_string() { char* str = (char*)malloc(10 * sizeof(char)); str[0] = 'H'; str[1] = 'e'; str[2] = 'l'; str[3] = 'l'; str[4...

    flex 4 生命周期

    通过深入理解组件和框架的生命周期,开发者能够优化性能,减少潜在问题,并且更好地利用Flex 4提供的高级特性,如States和Effects,为用户提供更优秀的交互体验。通过阅读源代码、参与社区讨论和持续学习,开发者...

    IT服务管理生命周期模型

    IT服务管理生命周期模型是IT行业中一个重要的概念,它基于PDCA(Plan-Do-Check-Act,即计划、执行、检查、处理)循环理论,旨在系统性地管理和优化IT服务,确保服务质量满足业务需求。这一模型将服务管理分为四个...

    PEMS开发生命周期-GB9706

    PEMS开发生命周期-GB9706.1-2020文档

    ASP.NET 应用程序生命周期

    ### ASP.NET 应用程序生命周期详解 #### 一、引言 ASP.NET 是 Microsoft 开发的一个框架,旨在帮助开发者创建动态网页、Web 应用和服务。随着 Web 技术的发展,Microsoft 在 IIS7.0 中引入了一种新的集成管道模型,...

    Android-简化Android组件之间的共享字段和通信以及可识别生命周期的自定义范围

    通过使用这样的库,开发者可以避免手动处理复杂的生命周期问题,减少错误和提高代码质量。 总的来说,优化Android组件间的通信和生命周期管理是提升应用性能和稳定性的重要步骤。通过使用像ViewModel、LiveData、...

    文档生命周期管理技术

    针对传统CMS在文档生命周期管理方面的不足,特别是固定的流程和权限控制问题,可配置的CMS文档生命周期管理方法提供了更加灵活和适应性强的解决方案。这种方法允许根据具体需求调整文档状态转换、操作权限和并发控制...

    软件生命周期以及流程图

    软件生命周期通常包括问题定义、可行性研究、需求分析、设计、实现、测试、维护等阶段。 问题定义阶段是软件生命周期的第一个阶段。在这个阶段,系统分析员与用户进行交流,弄清用户需要计算及解决什么问题,然后...

    VMware产品线生命周期手册.pdf

    VMware产品线生命周期手册是关于VMware公司各类产品支持和服务期限的重要指南,它详细列...当产品接近其生命周期末期时,及时升级到最新版本可以确保获得最新的安全补丁和功能改进,同时避免可能的技术问题和安全隐患。

    UIViewController生命周期详解

    理解`UIViewController`的生命周期不仅有助于我们编写出更加健壮的应用程序,还能帮助我们在遇到内存警告或者性能问题时快速定位问题所在。 #### 一、初始化阶段 在`UIViewController`的生命周期中,一切始于初始...

    安全开发生命周期

    ### 安全开发生命周期(SDL)概览 #### 一、SDL概念 安全开发生命周期(SDL, Security Development Lifecycle)是一种旨在确保软件在各个开发阶段都融入了安全性考量的方法论。这种方法论着重于通过在软件开发早期阶段...

Global site tag (gtag.js) - Google Analytics