做外国网站自媒体网络工程师和做网站哪个难

news/2025/9/24 17:12:09/文章来源:
做外国网站自媒体,网络工程师和做网站哪个难,怎么自己做图片,安阳网络推广代理————— 第二天 —————————————————下面我们一起来研究这三个问题。问题1#xff1a;哪些是需要回收的#xff1f;首先我们需要知道如何哪些垃圾需要回收#xff1f;判断对象是否需要回收有两种算法。一种是引用计数算法、一种是可达性分析算法。引用计… —————  第二天  —————————————————下面我们一起来研究这三个问题。问题1哪些是需要回收的首先我们需要知道如何哪些垃圾需要回收判断对象是否需要回收有两种算法。一种是引用计数算法、一种是可达性分析算法。引用计数算法引用计数算法很简单它通过记录对象被引用的次数从而判断该对象的重要程度。如果该对象被其它对象引用则它的引用计数加一如果删除对该对象的引用那么它的引用计数就减一当该对象的引用计数为0时那么该对象就会被回收。引用计数存在什么问题呢当有两个对象相互引用时由于它们互相引用对方所以计数都不为零这就会导致这两个对象无法回收。所以Java虚拟机采用的是另一种方法来判断对象是否存活它就是可达性分析算法。可达性分析算法可达性分析算法首先要确定一系列根对象GC Roots并从根对象为起点根据对象之间的引用关系搜索出一条引用链Reference Chain,在引用链的对象就存活而不在引用链的对象就认定为可回收对象。有一个比喻十分恰当可达性分析算法就好比是在清洗葡萄串我们可以从一根枝提起一大串葡萄他们就像一串引用链而没有和引用链相连的对象就像是散落在池子里的葡萄可以回收。虚拟机栈中引用的对象正在运行的方法使用到的变量、参数等方法区中类静态属性引用的对象static关键字声明的字段方法区中常量引用的对象(也就是final关键字声明的字段)本地方法栈中引用的对象native方法Java虚拟机内部的引用。系统内部的东西当然能作为根了问题2有哪些重要的垃圾回收算法学会判断内存中哪些垃圾需要回收后我们就需要掌握几个重要的垃圾回收算法。标记-清除算法标记-清除法是最基本的一种垃圾回收算法总的来说分为两步标记标记所有需要回收的对象灰色也就是在做垃圾的判定。清除将标记为灰色的部分清除掉。需要注意的是所谓的清除并不需要真正地把整个内存的字节进行清零操作只需要把空闲对象的起始结束地址记录下来放入空闲列表里表示这段内存是空闲的就行。优点速度快只需要做个标记就能知道哪一块需要被回收但是他的缺点也是致命的。他的主要缺点有两个一是执行效率不稳定二是会涉及到内存碎片化的问题。可能有人会问碎片化是什么意思呢上面所描述的这个栈通过标记清除法虽然是清除了空间但是清除出来的内存是大量的不连续内存碎片像下面的这块对象明明整体都有位却因为不连续无法放入这是标记-清除算法最大的缺点。所谓标记复制算法和标记整理算法都是对标记清除算法缺点的改进所以才说标记清除算法是最基础的方式。标记-整理算法与标记-清除算法不同标记-整理算法是移动式的。他会让所以存活的对象都向内存空间一端移动然后清除到边界以外的内存。标记移动是什么样的弊端呢标记-整理算法涉及到了对象的移动在整理阶段由于移动了可用对象需要去更新引用。效率就低了。标记-复制算法标记-复制算法相比前面的比较不同他将内存空间分为两块在垃圾回收时将正在使用的内存中的存活对象复制到未被使用的内存块中然后呢再清除正在使用的内存块中的所有对象。最后再交换两个内存的角色最后完成垃圾回收。大体来看可以分为 这么几个步骤复制清空易位不难看出标记复制算法不需要标记算是提升了效率。此外他也不会参数碎片问题。但是。标记复制算法的缺点也是十分明显的它需要双倍空间。问题3垃圾回收的具体流程是怎样的既然说JVM虚拟机不会单独采用某种算法而是会结合三种算法让他们协同工作其具体的实现就是java虚拟机里的分代垃圾回收机制。上图所示就是Java堆内存的划分。为什么需要这么划分区域呢那是因为我们的java对象寿命都是不同的有的可能需要长时间使用而有的可能用完就可以丢去。于是我们可以根据其生命周期的不同特点进行不同的垃圾回收策略。总的来说新生代的垃圾回收比较频繁老年代很久才触发一次垃圾回收。新生代处理的都是一些朝生夕死的对象而老年代回收的是更有价值的会长时间存活的对象。举个很好理解的例子新生代处理垃圾就像是处理生活日用垃圾而老年代处理的垃圾更像是过年大扫除家里实在太多垃圾了来一次重清理。大扫除清理的垃圾都是在家中存放时间较长的往往可能曾经很受用如今退役了先放着过年再打扫清除掉。每一次我们创建一个对象都会在伊甸园区占据一定内存大小渐渐地伊甸园就满了。当我们再要创建对象时就会发现空间不够了。这时就会触发一次垃圾回收新生代触发的垃圾回收有个称呼叫做MinorGC。MinorGC触发后伊甸园区就会对各个对象进行可达性分析从而知道哪些对象应该作为垃圾被清理。MinorGC在这里采取的是标记复制算法它将有用的对象存放到幸存区to然后把伊甸园中的对象清除掉。进入幸存区的幸运儿将会被标记上一个“幸运值”代表他们抗住了多少次清理。最后幸存区to和幸存区from还需要交互一下位置这里不是指物理位置交换而是说它俩的定义发生了交换下次就是左边那个为幸存区to右边的为幸存区from了。换句话说幸存区to始终是空的。我们再模拟多几次加深一下印象假如又进来了不少对象伊甸园又满了那就会触发一次MinorGC把幸存者移步到幸存区to其他一律清空。最后别忘了幸存区from和幸存区to又要再交换一下”位置“。...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/915993.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

润生软件简介:以“重构与共生”引领商业未来

2014年,广东企业家陈总敏锐洞察到:当算力实现百倍跃升,数字信息将深刻重塑社会结构,传统行业与企业形态面临全面重构。基于此,他发起创立了润生公司(Reconstruction-Symbiosis Framework,简称RS),开启一场以“…

Python 并发编程

Python 并发编程是提升程序执行效率的核心技术,尤其在处理多任务场景(如网络请求、数据计算、文件 IO 等)时至关重要。 1、threading与线程池 多线程是 Python 中最常用的并发方式之一,通过创建多个线程实现任务并…

博物馆展陈设计公司搜索引擎优化什么意思

hi,我是逸尘,一起学java吧 目标(任务驱动) 1.请重点的掌握I/O的。 场景:最近你在企业也想搞一个短视频又想搞一个存储的云盘,你一听回想到自己对于这些存储的基础还不是很清楚,于是回家开始了…

做液压的公司网站成都营销型网站建设中账号

文章目录 1. 命令概述2. 命令格式3. 常用选项4. 相关描述4.1 tree 命令安装 5. 参考示例5.1 创建树形目录5.2 使用 tree 命令查看树形目录 1. 命令概述 tree 命令用于在命令行界面以树状图形式显示目录及其子目录的内容。这个命令递归地列出所有子目录,并可选择显示…

安装pyautogui时与setuptool时冲突报错-module setuptools.dist has no attribute check_test_suite

采用离线的安装方式: 下载 命令: pip install E:\Codes\Wheels\PyAutoGUI-0.9.54.tar.gz --no-deps --target=..\myyolo1\Lib\site-packages

牛客周赛 Round 110 题解

View Post牛客周赛 Round 110 题解牛客周赛 Round 110 A 小苯的数字染色 ​ 手玩发现只有 \(n\) 为 \(1\) 不行。 void solve(){int n;cin >> n;if(n == 1){cout << "NO\n";}else{cout <<…

统计机器学习经典分类算法MATLAB实现

一、逻辑回归(Logistic Regression) 核心代码: % 加载数据(以鸢尾花数据集为例) load fisheriris; X = meas(:,1:2); % 选择前两个特征 Y = species;% 数据划分 cv = cvpartition(Y, HoldOut, 0.3); X_train = X(…

从安装到中文界面,一文带你玩转 DaVinci Resolve 20(零基础也能搞定)

软件介绍 DaVinci Resolve Studio v20.0.49是Blackmagic Design推出的专业影视后期制作软件,集成剪辑、调色、视觉特效、动态图形与音频后期功能于一体。该版本新增超100项创新功能,包括基于AI的UltraNR降噪工具、智…

靶场1

进入kali root权限反弹一个shell 攻击机监听: nc -lvnp 10000 目的主机: python3 drupa7-CVE-2018-7600.py http://210.26.72.210/drupal/ -c "bash -c bash -i >& /dev/tcp/210.26.72.230/10000 0>&…

昆明网站建设织梦外国客户网站

首先探讨一下为什么要使用nginx&#xff1a; 1、类似于apacheresin&#xff0c;nginx用于提供静态页面服务&#xff0c;比java服务器要强。虽然这些java服务器的性能都不赖&#xff0c;tomcat新版甚至还支持了epoll&#xff0c;但是用nginx来处理静态文件是一定比这些服务器更…

品牌茶业都在哪些网站做宣传潍坊网站建设方案咨询

事务的四个特征&#xff1a; 原子性 &#xff1a; 是指事务中包含的操作都被看做是一个逻辑单元 一致性&#xff1a; 开始前和结束后数据库都处于一致性状态 隔离性&#xff1a; 对数据库修改的多个事务是彼此隔离的 持久性&#xff1a; 事务完成之后对系统的影响是永久的

299、已凉

299、已凉299、已凉 唐●韩偓 碧阑干外绣帘垂,猩色屏风画折枝。 八尺龙须方锦褥,已凉天气未寒时。【现代诗意译】 翠绿栏杆外 绣帘低垂 猩红屏风 画着折枝花卉龙须八尺长 席上铺着锦绣被褥 天气已经凉了 还未到冷的时…

linux手动安装阿里云Logtail采集Nginx访问日志

这是一篇根据您提供的操作流程编写的技术文档。它详细记录了手动安装和配置Logtail以采集Nginx日志的全过程。技术文档:手动安装阿里云Logtail采集Nginx访问日志1. 文档概述 本文档详细描述了在Linux服务器上通过手动…

WPF的数据绑定之通知修改

1 添加接口 internal class MainViewModel : INotifyPropertyChanged {// 添加通知事件public event PropertyChangedEventHandler? PropertyChanged; }2 在类中添加相关参数事件调用 private string _name; public s…

古代史

P9034 「KDOI-04」Again Counting Set 第三条限制非常强,如果 \(\min \neq 0\),那么其它所有数都必须为 \(1\),也就是集合中的数全是 \(1\),这样,\(\min+\max+\operatorname{mex}=2\),因此集合大小必须为 \(2\)。…

matlab运行时遇到的license问题

遇到的问题如图:解决方法: 在"D:\Program Files\MATLAB\R2018a\bin"目录下创建一个matlabbat.bat ,内容为 matlab.exe -c "D:\Program Files\MATLAB\R2018a\licenses\license_standalone.lic" 然后…

HarmonyOS 5.0+ 安全加密与数据存储最佳实践指南

1 安全加密基础与规范要求 在移动应用开发中,数据安全是保护用户隐私和满足合规要求的基石。等保2.0(GB/T 22239-2019)和金融行业标准(JR/T 0071-2020)对敏感数据的存储与传输提出了明确要求,以下是核心规范要点…

HarmonyOS之设备硬件能力调用:传感器、蓝牙与定位

本文将全面介绍如何在HarmonyOS 5.0+中调用设备硬件能力,包括传感器数据获取、蓝牙设备连接与通信、定位服务使用等核心技术。1. 硬件能力调用概述 HarmonyOS提供了统一的硬件访问框架,允许开发者安全、高效地访问设…

如何网站关键词优化网站设计介绍怎么写

浙江少年儿童出版社出版肖复兴的第二部长篇儿童小说《合欢》&#xff0c;因对儿童独立人格的自觉尊重与强调&#xff0c;以及对人物复杂内心世界的深度开掘与勘探&#xff0c;回应了“儿童的被发现”这一重要课题。《合欢》不仅是作者对“远逝的童年”的一次深情回眸&#xff0…