概述

执行引擎是JAVA虚拟机最核心的组成部分之一。物理机的执行引擎是直接建立在处理器、硬件、指令集、操作系统层面上的,而虚拟机的执行引擎则是由自己实现的,因此虚拟机可以自行制定指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。

在JAVA虚拟机规范中制定了虚拟机字节码执行引擎的概念模型。

运行时栈帧结构:概述

栈帧是用于支持虚拟机进行方法调用、方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈的栈元素。

栈帧存储了方法的局部变量表、操作数栈、动态连接、方法返回地址等信息。每一个方法从调用开始到执行完成的过程,就对应着一个栈帧在虚拟机栈里面从入栈到出栈的过程。

每一个栈帧都包括了局部变量表、操作数栈、动态连接、方法返回地址、一些额外的附加信息。在编译程序代码的时候,栈帧中需要多大的局部变量表、多深的操作数栈都已经完全确定,并且写入到方法表的Code属性中,因此一个栈帧需要分配多少内存,不会受到程序运行期变量数据的影响,而仅仅取决于具体的虚拟机实现。

一个线程中的方法调用链可能会很长,很多方法都同时处于执行状态。对于执行引擎来讲,活动线程中只有栈顶的栈帧是有效的,称为当前栈帧,这个栈帧所关联的方法称为当前方法。执行引擎所运行的所有字节码指令都只针对当前栈帧进行操作。

运行时栈帧结构:局部变量表

局部变量表是一组变量值存储空间,用于存放方法参数、方法内部定义的局部变量。在JAVA程序被编译为Class文件时,就在方法的Code属性的max_locals数据项中确定了该方法所需要分配的最大局部变量表的容量。

局部变量表的容量以变量槽为最小单位,简称为Slot。虚拟机规范中并没有明确指明一个Slot应占用的内存空间大小。一个Slot可以存放一个32位以内的数据类型,JAVA中占用32位以内的数据类型有boolean、byte、char、short、int、float、reference、returnAddress共8种类型。虚拟机规范并没有说明reference长度也没有明确指出这个引用的数据结构,但一般来说,虚拟机实现至少都应当能从此引用中直接/间接查找到对象在JAVA堆中的起始地址索引、方法区中的对象类型数据。returnAddress是为字节码指令jsr、jsr_w、ret服务的,它指向了一条字节码指令的地址。

对于64位的数据类型,虚拟机会以高位在前的方式为其分配2个连续的Slot空间。鉴于long和double是明确的64位,相当于把long和double数据类型分割存储到2个Slot,不过由于局部变量表建立在线程的堆栈上,是线程私有的数据,,无论读写2个连续Slot是否是原子操作,都不会引起数据安全问题。

虚拟机通过索引定位的方式来使用局部变量表,索引值范围是从0开始到局部变量表最大的Slot数量。如果是32位数据类型的变量则索引n就代表了使用第n个Slot,如果是64位数据类型的变量,则说明要使用第n和第n+1这2个Slot。

在方法执行时,虚拟机是使用局部变量表来完成参数值到参数变量列表的传递过程,如果是实例方法,那么局部变量表中第0位索引的Slot默认是用于传递方法所属对象实例的引用,在方法中可以通过关键字this来访问这个隐含的参数。其余参数则按照参数表的顺序来排列,占用从1开始的局部变量Slot,参数表分配完毕后,再根据方法体内部定义的变量顺序和作用域分配其他的Slot。

局部变量表中的Slot是可重用的,方法体中定义的变量,其作用域不一定会覆盖整个方法体,如果当前字节码PC计数器的值已经超过了某个变量的作用域,那么这个变量对应的Slot就可以交给其他变量使用。这样的设计不仅仅是为了节省栈空间,在某些情况下Slot的复用会直接影响到系统的垃圾收集行为。

举个例子:

局部变量表中的Slot是否还存在关于placeholder数组对象的引用。第一次修改中,代码虽然已经离开了placeholder的作用域,但在此之后,没有任何对局部变量表的读写操作,placeholder原本所占用的Slot还没有被其他变量复用,所以GC Roots一部分的局部变量表仍然保持着对它的关联。这种关联没有被及时打断,在绝大部分情况下影响都很轻微。但如果遇到一个方法,其后面的代码有一些耗时很长的操作,而前面又定义了占用了大量内存、实际上已经不会再被使用的变量,手动将其设置为null值就不是一个毫无意义的操作,这种操作可以作为一种在极个别特殊情形(对象占用内存大、方法栈帧长时间不能被回收、方法调用次数达不到JIT的编译条件)下的技巧来使用。

赋值null的操作在经过虚拟机JIT编译器优化之后会被消除掉,这个时候再将变量设置为null是没有意义的。当字节码被编译为本地代码后,对GC Roots的枚举也与解释执行时期有所差别。

局部变量不像前面的static类变量那样存在准备阶段,static变量有2次初始化过程,无论如何,类变量仍然具有一个确定的初始值。但局部变量就不一样了,如果一个局部变量定义了但没有赋初始值是不能使用的。

运行时栈帧结构:操作数栈

操作数栈也常被称为操作栈,它是一个后入先出栈。同局部变量表一样,操作数栈的最大深度也在编译的时候被写入到Code属性的max_stacks数据项之中。操作数栈的每一个元素可以是任意的JAVA数据类型,包括long和double。32位数据类型所占的栈容量为1,64位数据类型所占的栈容量为2。在方法执行的任何时候,操作数栈的深度都不会超过在max_stacks数据项中设定的最大值。

当一个方法刚刚开始执行的时候,这个方法的操作数栈是空的,在方法的执行过程中,会有各种字节码指令向操作数栈中写入、提取内容,也就是入栈、出栈操作。例如:在做算术运算的时候是通过操作数栈来进行的,又或者在调用其他方法的时候是通过操作数栈来进行参数传递的。

操作数栈中元素的数据类型必须与字节码指令的序列严格匹配,在编译程序代码的时候,编译器要严格保证这一点,在类校验阶段的数据流分析中还要再次验证这一点。

在概念模型中,2个栈帧作为虚拟机栈的元素,相互之间是完全独立的。但实际情况下大多数虚拟机实现会做一些优化处理,令2个栈帧出现一部分重叠。让下面栈帧的部分操作数栈 与 上面栈帧的部分局部变量表重叠在一起,这样在进行方法调用的时候就可以共用一部分数据,而无须进行额外的参数赋值传递。

运行时栈帧结构:动态连接

每个栈帧都包含一个指向运行时常量池中该栈帧所属方法的引用,持有这个引用就是为了支持方法调用过程中的动态连接。

Class文件的常量池中存有大量的符号引用,字节码中的方法调用指令就以常量池中指向方法的符号引用为参数。这些符号引用一部分会在类加载阶段或第一次使用的时候转化为直接引用,这种转化称为静态解析。另外一部分会将在每一次的运行期间转化为直接引用,这部分称为动态连接。

运行时栈帧结构:方法返回地址

当一个方法被执行后,有2种方式退出这个方法:

①执行引擎遇到任意一个方法返回的字节码指令,此时可能会有返回值传递给上层的方法调用者、是否有返回值、返回值类型将根据遇到何种方法返回指令来决定,这种退出方法的方式称为正常完成出口。

②在方法执行过程中遇到了异常,并且这个异常没有在方法体内得到处理,无论是JAVA虚拟机内部产生的异常,还是代码中使用athrow字节码指令产生的异常,只要在本方法的异常表中没有搜索到匹配的异常处理器,就会导致方法退出,这种退出方式称为异常完成出口。一个方法使用异常完成出口的方式退出是不会给它的上层调用者产生任何返回值的。

无论采用何种退出方式,在方法退出之后,都需要返回到方法被调用的位置,程序才能继续执行,方法返回时可能需要在栈帧中保存一些信息,用来帮助恢复它的上层方法的执行状态。一般来说,方法正常退出时,调用者的PC计数器的值就可以作为返回地址,栈帧中很可能会保存这个计数器值。而方法异常退出时,返回地址是要通过异常处理器表来确定的,栈帧中一般不会保存这部分信息。

方法退出的过程实际上等同于把当前栈帧出栈,因此退出时可能执行如下操作:恢复上层方法的局部变量表、操作数栈,同时把返回值(如果有的话)压入调用者栈帧的操作数栈中,调整PC计数器的值来指向方法调用指令后面的一条指令等等。

运行时栈帧结构:附加信息

虚拟机规范允许具体的虚拟机实现增加一些规范里没有描述的信息到栈帧中,这部分信息完全取决于具体的虚拟机实现。

方法调用:概述

方法调用并不等同于方法执行,方法调用阶段唯一的任务就是确定被调用方法的版本。一切方法调用在Class文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址,这使得JAVA方法调用过程变得相对复杂起来,需要在类加载期间甚至到运行期间才能确定目标方法的直接引用。

方法调用:解析

所有方法调用中的目标方法在Class文件里面都是一个常量池中的符号引用,在类加载的解析阶段,会将其中的一部分符号引用转化为直接引用,这种解析成立的前提是:方法在程序真正运行之前就有一个可确定的调用版本并且这个方法的调用版本在运行期是不可改变的,即调用目标在程序代码写好、编译器进行编译时就必须确定下来,这类方法的调用称为解析。

在JAVA语言中,符合“编译器可知、运行期不可变”要求的方法主要有static方法和private方法。static方法与类型直接关联,private方法在外部不可被访问,这2种方法都不可能通过继承或者别的方式重写出其他版本,因此这2种方法适合在类加载阶段进行解析。与之相对应的,在JVM中提供了4条方法调用字节码指令:

①invokestatic:调用静态方法。

②invokespecial:调用实例构造器<init>方法、私有方法、父类方法。

③invokevirtual:调用所有的虚方法。

④invokeinterface:调用接口方法,会在运行时再确定一个实现此接口的对象。

只要能被invokestatic和invokespecial指令调用的方法,都可以在解析阶段确定唯一的调用版本,符合这个条件的有静态方法、私有方法、实例构造器、父类方法共4类,它们在类加载的时候就会把符号引用解析为该方法的直接引用。

这4类方法可以称为非虚方法,与之相反的其他方法称为虚方法(除去final方法)。

final方法是使用invokevirtual指令来调用的,但是由于final方法无法被覆盖、没有其他版本,所以也无须对方法接受者进行多态选择,因此在JAVA语言规范里明确说明了final方法是一种非虚方法。

解析调用一定是个静态的过程,在编译期间就完全确定,在类装载的解析阶段就会把涉及的符号引用全部转变为可确定的直接引用,不会延迟到运行期再去完成。分派调用dispatch则可能是静态的也可能是动态的,根据分派依据的宗量数可分为单分派和多分派。这2类分派方式两两组合就构成了静态单分派、静态多分派、动态单分派、动态多分派。

方法调用:静态分派

分派调用过程会揭示JAVA多态特性的一些最基本的体现。

public class StaticDispatch{

static abstract class Human{}

static class Man extends Human{}

static class Women extends Human{}

public void sayHello(Human guy){System.out.println(“guy”)}

public void sayHello(Man guy){System.out.println(“man”)}

public void sayHello(Women guy){System.out.println(“women”)}

public static void main(String[] args){

Human man = new Man();

Human women = new Women();

StaticResolution sr = new StaticResolution();

sr.sayHello(man);

sr.sayHello(women);

}

}

Human man = new Man();这里的Human称为变量的静态类型/外观类型,而Man则称为变量的实际类型。

静态类型的变化仅仅在使用时发生,而变量本身的静态类型不会被改变,并且最终的静态类型是在编译期可知的;实际类型变化的结果在运行期才能确定,毕竟编译器在编译期并不知道一个对象的实际类型是什么。

//实际类型变化

Human man = new Man();

man = new Women();

//静态类型变化

sr.sayHello((Man)man);

sr.sayHello((Women)man);

现在再看一下案例,方法接受者是sr确定的情况下,到底使用哪个重载版本,就取决于传入的参数数量、参数类型。由于man和women是静态类型,编译器在重载时是通过参数的静态类型而不是实际类型来作为判断依据。并且静态类型是编译期可知,所以在编译阶段,JAVAC编译器就根据参数的静态类型已经决定了使用哪个重载版本,因此选择了sayHello(Human)来作为调用目标,把这个方法的符号引用写到main()方法里的2条invokevirtual指令的参数中。

所有依赖静态类型来定位方法执行版本的分派动作,都称为静态分派。静态分派的最典型应用就是方法重载。

静态分派发生在编译阶段,因此确定静态分派的动作实际上不是由JVM来执行,而是由编译器来执行。

另外,编译器虽然能确定出方法的重载版本,但很多情况下这个重载版本并不是唯一的,往往只能确定一个更加合适的版本。产生这种模糊结论的主要原因是字面量不需要定义,所以字面量没有显式的静态类型,它的静态类型只能通过语言上的规则去理解和推判。

方法调用:动态分派

动态分派和多态性的另外一个重要体现-重写有着很密切的关联。

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

相关文章

  1. kubeadm(k8s)部署—单主集群

    Kubernetes概述 简介 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。Kubernetes一个核心的特点就是能够自主的管理容器来保证云平…...

    2024/5/8 11:57:02
  2. SpringMVC ,Spring 和 Mybatis 的整合

    文章目录一、搭建整合环境二、搭建Spring框架三、搭建SpringMVC框架四、Spring整合SpringMVC框架五、搭建 MyBatis 的环境并整合到 spring 中六、代码文件 一、搭建整合环境 整合说明:SSM整合可以使用多种方式,咱们会选择XML + 注解的方式 整合的思路:先搭建整合的环境 先把…...

    2024/4/24 7:41:43
  3. 4:7-4 验证“哥德巴赫猜想”

    此题还有时间复杂度更低的方法,以后再补,(暴力破解会超时!) n = int(input()) if n == 4:print(4 = 2 + 2) else:# 判断p是否素数:# 特判p==2:for j in range(2, n-2):if (n - 2) % j == 0:breakelse:print({} = 2 + {}.format(n, n - 2))m = int(n ** (1 / 2)+1)for i in …...

    2024/4/24 7:41:44
  4. Git总结

    Git总结本地git commitgit branchgit checkoutgit mergegit rebasegit rebase的参数git cherry-pickgit taggit describegit resetgit revert远程仓库git clonegit fetchGit fetch 的参数git pullgit pull 参数git pushgit push 的参数HEADgit中的相对引用远程服务器拒绝!(Remo…...

    2024/5/8 16:48:17
  5. 这么多的python库,年薪已经百万的程序员也没用到80%!

    Python 为什么那么火?编程简单明了,非常容易上手对于新手和初学者来说,Python是非常容易学习和使用的。事实上,它是最容易学习的编程语言之一。部分原因是因为它简化了的语法,更贴近于自然语言,这样你就可以编写Python代码并更快地执行。比如小编的孩子还在上小学,开发了…...

    2024/5/8 15:35:10
  6. Spring cloud 启动三 run prepareEnvironment方法

    前面我们讲到了getRunListeners(args)方法获取哪些Listeners,并且还讲了listeners.starting()里面触发了分别哪些Listeners的方法以及相应的作用,这里我们将开始讲解prepareEnvironment()方法: private ConfigurableEnvironment prepareEnvironment(// 获取或创建环境Conf…...

    2024/4/24 7:41:38
  7. 商家如何发展社群经济?这样去理解“人、货、场”

    中国电商的发展趋势可谓是精彩纷呈,继淘宝天猫、京东等大型电商商城,到唯品会等品牌专供,市场细分类商城,再到现在的云集、拼多多等模式,电子商务模式的发展种类越来越多,同样,市场的壮大,意味着竞争的增强,传统的模式已经不足以在领域中稳定立足,只有不断创新才能有…...

    2024/4/24 7:41:44
  8. 全国省市区级联

    var aProvince = [北京市,天津市,河北省,山西省,内蒙古,辽宁省,吉林省,黑龙江省,上海市,江苏省,浙江省,安徽省,福建省,江西省,山东省,河南省,湖北省,湖南省,广东省,广西,海南省,重庆市,四川省,贵州省,云南省,西藏,陕西省,甘肃省,青海省,宁夏,新疆,台湾省,香港,澳门];var aCity …...

    2024/4/24 7:41:36
  9. 无人机的参数调试

    似乎都是先调内环,也就是先调俯仰角和翻滚角,偏航角先不用调,因为俯仰角和翻滚角调好了飞机就可以稳起来飞了,偏航角调不好无非是会自己转,但是飞机摔不了。《四轴飞行器 DIY 基于STM32微控制器》...

    2024/4/24 7:41:37
  10. c语言入门到c++使用高手:深入学习C++之基本语言(九)

    第二章 基本语言 第九节 迭代器精彩演绎,失效分析及弥补、实战 1. 迭代器简介迭代器是一种遍历容器内元素的数据类型,这种数据类型有点像指针,我们理解为迭代器用来指向容器中的某个元素string, vector,[], 很少用[],更常用的访问方式就是用迭代器(更通用)通过迭代器,我们可以…...

    2024/4/24 7:41:34
  11. JAVA:旋转数组最小数

    如何在旋转数组中取得最小值 注:旋转数组是指将最开始1或几位元素移到数组尾部 解题思路 1.旋转之后的数组存在两个上升序列,最小元素在两个升序的中间。 2.用首尾两个指针在两个序列中找到最大和最小的值,这样end指向的数则为最小值。 代码实现 public class TestList {pub…...

    2024/4/24 7:41:37
  12. QPS是什么?如何计算?

    1.QPS说明: QPS即每秒查询率,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 2.每秒查询率 因特网上,经常用每秒查询率来衡量域名系统服务器的机器的性能,即为QPS。 对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。 3.计算关系: QPS = 并发…...

    2024/4/24 7:41:36
  13. 信息学奥赛一本通(C++版)1007:计算[a+b÷c]的值

    1007:计算[a+bc]的值题目:题目描述输入输出输入样例输出样例程序样本 题目: 题目描述 给定3个整数a、b、c,计算表达式(a+b)c的值。 输入 输入仅一行,包括三个整数a、b、c, 数与数之间以一个空格分开。(-10,000<a,b,c<10,000) 输出 输出一行,即表达式的值。 输入样…...

    2024/4/24 7:41:32
  14. luogu P6565 [NOI Online #3 入门组]最急救助

    题面传送门 没啥好说的,模拟即可。 #include<cstdio> #include<iostream> #include<cstring> #define max(a,b) ((a)>(b)?(a):(b)) using namespace std; int n,m,k,ans,tot,pus,num[139],h[139]; char s[139][139],a[539]; int main(){ // freopen(&qu…...

    2024/4/24 7:41:37
  15. html怎么换行?换行代码是什么?九种html文字换行方法总结

    在用html写网页时,为了让网页中内容看起来整洁流畅,我们需要将其中的文字内容进行换行,那么,html怎么来换行呢?本篇文章就来给大家介绍一下html中给文字换行的方法。打造全网web前端全栈资料库(总目录)看完学的更快,掌握的更加牢固,你值得拥有(持续更新)html中换行的…...

    2024/4/24 7:41:36
  16. 数据库之索引的数据结构

    索引的数据结构主要有以下几种: (1)生成索引,建立二叉查找树/二叉排序树/二叉搜索树进行二分查找; (2)平衡二叉树,红黑树; (3)生成索引,建立B-Tree(B树/B-树)结构进行查找; (4)生成索引,建立BTree(B+树)结构进行查找; (5)生成索引,建立Hash结构进行查找;…...

    2024/5/4 1:40:20
  17. VScode使用Remote - SSH插件实现远程服务器开发

    一、引言最近做实验需要用到远程服务器开发,在windows系统上可以下载Xshell 、PuTTY 来进行实验,因为助教推荐使用VScode+Remote-ssh来进行实验,所以百度了怎么样来操作,记录一下。在2019年5月份,VSCode推出了一系列新的插件,来实现远程开发的功能,对于许多使用Windows进…...

    2024/4/16 19:03:24
  18. Spring Cloud系列(五)负载均衡消费rest+ribbon

    负载均衡消费ribbon什么是Ribbon?版本实战演练前期工作新建Ribbon工程测试 什么是Ribbon?Ribbon是 Spring Cloud Netflix下的客户端负载均衡器,通过服务名称调用服务时,通过Ribbon做负载均衡获取实际的服务调用地址,然后通过HTTPClient去连接这些服务器提供服务。负载均衡…...

    2024/4/16 19:03:36
  19. 深信服科技有限公司2020实习生招聘网上笔试题(C/C++)

    2020.05.26 19:00-20:30 一共两道编程题 第一题输入 2 3 0 1 1 1 1 0输出 8第二题输入 64 1 8924 25 1 23860 28 2 1507 19 2 4675 12 2 16096 26 3 2098 25 3 3389 16 3 29309 18 4 27966 15 5 11983 21 5 15966 27 5 20545 22 6 30106 29 6 30345 25 7 14043 28 7 19831 24 7…...

    2024/4/16 19:03:42
  20. 池化Pooling中的Max Pooling

    目录Max Pooling介绍Max Pooling的作用 Max Pooling介绍 卷积神经网络CNN中,一般在卷积层后还会有一个 pooling层,即池化层,池化层做的实际是数据降维,简化计算。 max pooling的操作如下图所示:整个图片被不重叠的分割成若干个同样大小的小块(pooling size),每个小块内只…...

    2024/4/24 7:41:32

最新文章

  1. Windows下启动Tomcat显示乱码解决办法

    1、Windows下启动Tomcat显示乱码 2、解决办法 找到 D:\apache-tomcat-9.0.89\conf下的logging.properties&#xff0c;找到java.util.logging.ConsoleHandler.encoding的值改为GBK&#xff0c;就可以了 完美解决&#xff01;显示正常的中文了...

    2024/5/8 19:54:11
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/5/7 10:36:02
  3. WPS二次开发专题:WPS SDK实现文档打印功能

    作者持续关注WPS二次开发专题系列&#xff0c;持续为大家带来更多有价值的WPS开发技术细节&#xff0c;如果能够帮助到您&#xff0c;请帮忙来个一键三连&#xff0c;更多问题请联系我&#xff08;QQ:250325397&#xff09; 在办公场景或者家教场景中经常碰到需要对文档进行打印…...

    2024/5/8 13:49:57
  4. 蓝桥杯 - 受伤的皇后

    解题思路&#xff1a; 递归 回溯&#xff08;n皇后问题的变种&#xff09; 在 N 皇后问题的解决方案中&#xff0c;我们是从棋盘的顶部向底部逐行放置皇后的&#xff0c;这意味着在任何给定时间&#xff0c;所有未来的行&#xff08;即当前行之下的所有行&#xff09;都还没…...

    2024/5/6 20:35:46
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/8 6:01:22
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/7 9:45:25
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/7 14:25:14
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/7 11:36:39
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/6 1:40:42
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/7 9:26:26
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/8 19:33:07
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/5 8:13:33
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/6 21:42:42
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57