当前位置: 首页 > news >正文

酒店网站建设方案ppthtml网页设计大赛

酒店网站建设方案ppt,html网页设计大赛,那些网站权重高,百度站长平台app关于作者#xff1a;CSDN内容合伙人、技术专家#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 #xff0c;擅长java后端、移动开发、人工智能等#xff0c;希望大家多多支持。 目录 一、导读二、概览三、案例分析3.1 使用memory-profiler3.2 使用 cp… 关于作者CSDN内容合伙人、技术专家 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 擅长java后端、移动开发、人工智能等希望大家多多支持。 目录 一、导读二、概览三、案例分析3.1 使用memory-profiler3.2 使用 cpu-profiler 四、 推荐阅读 一、导读 我们继续总结学习Java基础知识温故知新。 二、概览 内存抖动是指内存不稳定频繁分配和回收导致内存不稳定其表现形式为频繁GC 内存抖动可能会导致以下问题 性能下降由于频繁的内存分配和回收操作系统的性能会受到影响导致运行速度变慢。程序崩溃、OOM内存抖动可能导致内存分配错误或者内存泄漏导致程序崩溃或者运行不稳定。系统资源消耗内存抖动会增加系统资源的消耗包括内存和CPU的占用率可能导致系统负载增加。 内存抖动大部分都是由于频繁创建对象导致会占用大量内存同时会产生大量的内存碎片不连续的内存碎片很多情况下是无法被分配的。 从而导致OOM的产生。 要防止内存抖动可以采取以下几个方法和策略 合理规划内存分配在设计和编写代码时要合理规划内存的分配和释放避免频繁的内存分配和回收操作。可以使用对象池、缓冲区等技术来预先分配和管理一块内存减少内存分配的开销。 避免内存碎片内存碎片是指内存中存在一些被分割成小块的未被使用的空间。内存碎片会导致内存分配失败或效率低下。可以通过使用内存池、内存复用等方法来减少内存碎片的产生。另外考虑使用内存管理工具或垃圾回收机制来自动进行内存碎片整理和回收。 优化算法和数据结构一些算法和数据结构可能会导致内存抖动例如频繁的动态数组扩容和收缩操作。可以使用更合适的数据结构或算法降低内存抖动的概率或频率。比如使用链表代替数组使用平衡二叉树代替线性查找等。 设置适当的内存分配策略根据实际情况可以根据内存使用情况和需求设置合适的内存分配策略。可以使用内存池、内存缓存等技术来预先分配和管理内存减少频繁的内存分配与回收操作。 进行内存性能优化对于大型或长时间运行的应用程序可以进行内存性能优化。可以使用内存分析工具和性能分析工具来检测内存使用情况找出内存抖动的原因并针对性地进行优化。 进行定期的内存测试和性能评估定期进行内存测试和性能评估可以发现潜在的内存抖动问题并进行及时修复和优化。 三、案例分析 不同的工具有不同的使用场景对应线下场景我们先用 android studio自带的工具 3.1 使用memory-profiler 可以直观的展示内存使用情况我们先上一段代码来模拟内存申请及释放 public class MainActivity extends AppCompatActivity {// Used to load the example library on application startup.static {System.loadLibrary(example);}private static Handler mHandler new Handler() {Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);// 循环1000次for (int index 0; index 1000; index){// 然后弄一个相对耗内存的操作制造内存抖动String args[] new String[1000000];}mHandler.sendEmptyMessageDelayed(0,50);}};private ActivityMainBinding binding;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);binding ActivityMainBinding.inflate(getLayoutInflater());setContentView(binding.getRoot());// Example of a call to a native methodTextView tv binding.sampleText;tv.setText(stringFromJNI());tv.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {mHandler.sendEmptyMessageDelayed(0,2000);}});}/*** A native method that is implemented by the example native library,* which is packaged with this application.*/public native String stringFromJNI(); }代码运行后我们进行内存的保存快速查看Java 和 Kotlin 分配情况分析 通过上面的图我们可以看到在频繁的gc 那我们怎么才能知道内存抖动真正发生在哪里呢看上图string数组非常多我们点一下这个string数组如下图 上面就出现了一个Call Stack 标签页显示该实例被分配到何处以及在哪个线程中我们可以明显的看到 handlemessage 然后右键选择jump to source之间跳转到源码查看。 Allocations: 此类创建的实例对象数量 Total count对象在堆中未被回收的数量 3.2 使用 cpu-profiler 使用方式跟上面差不错我们保存文件然后查看 跟踪这一段CPU执行的时间 如果发现某一段应用自有函数的调用代码即绿色的条形段在反复地被执行便是内存抖动的地方 四、 推荐阅读 Java 专栏 SQL 专栏 数据结构与算法 Android学习专栏
http://www.sczhlp.com/news/284965/

相关文章:

  • 机构类网站有哪些青浦营销型网站建设
  • logo设计网站国外为什么网站建设要值班
  • 竞价网站模板建立企业门户网站
  • 成都专业建站公司手术直播平台
  • 德州网站优化软件定制开发平台
  • 怎么做网站像淘宝这样的重庆网站推广的网站
  • 阿里云做网站的怎么样做一家卖东西的网站
  • 网站建设模板51电子商务网站自助建站
  • 如何与导航网站做友情链接wordpress在线考试插件
  • 建设音乐网站企业网站建立网络虚拟社区时对于企业
  • 太仓智能网站建设网站地图文件
  • 网站设计与制作培训班网页界面设计历史
  • 网站定制开发要多久做网站所需要哪方面的知识
  • 网站seo站外优化jsp网站开发视频教程
  • html5的篮球网站开发企业网站趋势
  • 旅游网站需求分析怎么做的树莓派打开wordpress
  • 做金融的喜欢逛哪些网站没有基础学做网站
  • wordpress to goseo零基础入门教程
  • 更新了!微信公众号文章数据批量导出excel软件1.1版,轻松实现统计分析
  • 中国数据集成平台TOP10综合评估报告(2025)
  • pytorch加载数据集
  • 同时支持RTSP/ONVIF/GB28181的平台哪里找?来看EasyGBS!
  • BIM 设计工具再进化,Revit 2026.3 重塑行业效率标杆
  • 天河公司网站建设网站开发可行性分析报告范文
  • 可以直接进入的舆情网站网页设计制作单位
  • python网站开发集成环境龙岗网站注册
  • 广州网站优化哪里有局域网端口映射做网站
  • 韶关手机网站建站微软制作网页软件
  • 做小程序和做网站哪个好购物平台网站建设
  • 重庆网站建设公司名单wordpress搜索关键词