j***a互联网技术栈
如何理解java虚拟机栈?
其中,虚拟机栈是一个后入先出的栈。栈帧是保存在虚拟机栈中的,栈帧是用来存储数据和存储部分过程结果的数据结构,同时也被用来处理动态链接(Dynamic Linking)、方法返回值和异常分派(Dispatch Exception)。线程运行过程中,只有一个栈帧是处于活跃状态,称为“当前活跃栈帧”,当前活动栈帧始终是虚拟机栈的栈顶元素。
理解虚拟机栈,应该先理解虚拟机的运行原理以及内存布局,这里简要说一下:虚拟机顾名思义就是仿照操作系统,在操作系统上运行的可以执行其他程序的虚拟平台。它从操作系统系统内存中占据一大块内存,然后将这一大块内存模拟操作系统内存布局,分成了Java堆内存,JAVA虚拟机栈,方法区,程序计数器,本地方法栈。有这几块,就可以编译和运行J***a了。
那么J***a虚拟机栈在其中有什么作用呢?我们知道,操作系统执行本地程序方法调用实际上是对方法中的局部变量,方法出入口信息在系统寄存器进行存取的过程,这种执行称作“面向寄存器”架构,而J***a虚拟机执行J***a方法也是如此的流程,但是J***a虚拟机没有寄存器的概念,因此分出了J***a虚拟机栈来模拟寄存器的作用,这称之为“面向栈”架构。
所以J***a虚拟机栈的作用就是J***a方法执行时创建一个栈帧,用于存储方法中的局部变量,操作数等信息,再利用栈的先入后出特性完成方法调用。
希望可以帮助理解。
和程序计数器一样,J***a虚拟机栈也是线程私有的,它的生命周期和线程相同,描述的是 J***a 方法执行的内存模型。
J***a 内存可以粗糙的区分为堆内存(Heap)和栈内存(Stack),其中栈就是现在说的虚拟机栈,或者说是虚拟机栈中局部变量表部分。 (实际上,J***a虚拟机栈是由一个个栈帧组成,而每个栈帧中都拥有:局部变量表、操作数栈、动态链接、方法出口信息。)
局部变量表主要存放了编译器可知的各种数据类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference类型,它不同于对象本身,可能是一个指向对象起始地址的引用指针,也可能是指向一个代表对象的句柄或其他与此对象相关的位置)。
J***a 虚拟机栈会出现两种异常:StackOverFlowError 和 OutOfMemoryError。
StackOverFlowError: 若J***a虚拟机栈的内存大小不允许动态扩展,那么当线程请求栈的深度超过当前J***a虚拟机栈的最大深度的时候,就抛出StackOverFlowError异常。
OutOfMemoryError: 若 J***a 虚拟机栈的内存大小允许动态扩展,且当线程请求栈时内存用完了,无法再动态扩展了,此时抛出OutOfMemoryError异常。
J***a 虚拟机栈也是线程私有的,每个线程都有各自的J***a虚拟机栈,而且随着线程的创建而创建,随着线程的死亡而死亡。
Web如何和J***a相结合?
你首先要理解web的概念(或含义),读点它历史由来(百度有)。其次,弄懂在一台pc上同时是服务器和客户端。最后好、拓展开来。一台PC的硬件结构的组成,可能有点难
这样的问题,要不是瞎问,就是只学了点前端如html,或者只学了点J***A基础。但都相当于瞎问、想得多做的少的一种。
为了减少这样的问题出现,对问题的发布要有一定的筛选机制。
另外,再说点关于这个问题的基本回答。
所谓Web基本可以认为是应用前端,是应用的结构划分,负责向用户展现内容、接收输入、实现交互系统组成。
这部分简单包括这些html(含H5)、css、J***ascript等,由这些构成前端技术圈。
当让,现在JS很不错,已经形成自己完整的应用技术栈,可以前后端通吃。这得归功于NodeJS,这里不多说.
python爬虫工作了一段时间后,技术栈应该怎么发展?
个人建议可以转机器学习或者大数据,机器学习基本都是用Python实现的,如果[_a***_](主要是统计学)好的话,可以转机器学习,数学不好的话可以转大数据,可以一边工作,一边学习,只不过机器学习比较难,下面附大数据学习路线图
1.j***ase+mysql+jdbc
2.linux
3.Hadoop (hadoop的学习过程熟练掌握懂原理,目前很多主流的公司都开始大力在spark上面)
4.***ro
5.ProtoBuf
6.Hive
7.HBase
8.flume
9.Kafka
首先我和你一样都是爬虫工程师。如果简单从公司来看,爬虫工程师是个天花板很低的工作,但是实际可发展性很强。主要发展方向有以下几点:
1:逆向工程师(前端逆向和app逆向),作为爬虫工程师你肯定知道很多接口都是加密的,很多公司招专业的逆向工程师,而且待遇不错
2:大数据工程师,海量数据的处理等等是爬虫进阶必须掌握的技能之一。
3:黑产。牛逼的爬虫工程师是各个灰产争夺的对象(刷榜,抢单等等),这个工作核心还是跟大厂的工程师斗智斗勇。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/23093.html