目录

    • 写在前面
    • 饿汉式单例模式:
      • 一般形式
      • 静态代码块
    • 懒汉式单例模式:
      • 双重检查锁
      • 静态内部类
    • 反射破坏单例
    • 序列化破坏单例:
    • 添加readResolve()方法
      • 保证序列化不会破坏单例demo及运行结果
      • 原理分析
    • 注册试单例模式
      • 枚举式单例模式
        • 代码实现
        • 原理详解
      • 容器式单例模式
        • demo及运行结果
        • spring框架思想验证
    • 总结

写在前面

本文从最基础的饿汉式及懒汉式demo进行引入,通过jdk源码分别分析了:反射及反序列化破坏单例原理、readResolve()如何防止反序列化破坏单例、枚举式单例的优点及如何防止反射及反序列化破坏、以及spring容器式单例思想详解。

饿汉式单例模式:

一般形式

/*** 优点:执行效率高,性能高,没有任何的锁* 缺点:某些情况下,可能会造成内存浪费*/
public class HungrySingleton {private static final HungrySingleton hungrySingleton = new HungrySingleton();private HungrySingleton(){}public static HungrySingleton getInstance(){return  hungrySingleton;}
}

静态代码块

/*** 静态代码块*/
public class HungryStaticSingleton {private static final HungryStaticSingleton hungrySingleton;static {hungrySingleton = new HungryStaticSingleton();}private HungryStaticSingleton(){}public static HungryStaticSingleton getInstance(){return  hungrySingleton;}
}

懒汉式单例模式:

双重检查锁

/*** 优点:性能高了,线程安全了* 缺点:可读性难度加大,不够优雅,并且加锁会产生性能问题*/
public class LazyDoubleCheckSingleton {private volatile static LazyDoubleCheckSingleton instance;private LazyDoubleCheckSingleton(){}public static LazyDoubleCheckSingleton getInstance(){//检查是否要阻塞if (instance == null) {synchronized (LazyDoubleCheckSingleton.class) {//检查是否要重新创建实例if (instance == null) {instance = new LazyDoubleCheckSingleton();//指令重排序的问题}}}return instance;}
}

静态内部类

/*优点:写法优雅,利用了Java本身语法特点,性能高,避免了内存浪费,不能被反射破坏缺点:不优雅*/
public class LazyStaticInnerClassSingleton {private LazyStaticInnerClassSingleton(){if(LazyHolder.INSTANCE != null){throw new RuntimeException("不允许非法访问");}}private static LazyStaticInnerClassSingleton getInstance(){return LazyHolder.INSTANCE;}private static class LazyHolder{private static final LazyStaticInnerClassSingleton INSTANCE = new LazyStaticInnerClassSingleton();}
}

反射破坏单例

public class ReflectTest {public static void main(String[] args) {try {//获取单例类的class及构造器Class<?> clazz = LazyDoubleCheckSingleton.class;Constructor c = clazz.getDeclaredConstructor(null);//设置强制访问c.setAccessible(true);//实例化两次Object instance1 = c.newInstance();Object instance2 = c.newInstance();//分别打印System.out.println(instance1);System.out.println(instance2);//falseSystem.out.println(instance1 == instance2);}catch (Exception e){e.printStackTrace();}}
}

输出结果:在这里插入图片描述

序列化破坏单例:

//一个单例对象创建好后,有时候需要将对象序列化然后写入磁盘,下次使用时再从磁盘中读取对象进行反序列化,然后将其转化为内存对象。反序列化后的对象会重新分配内存,即重新创建
public class SeriableSingletonTest {public static void main(String[] args) {SeriableSingleton s1 = null;SeriableSingleton s2 = SeriableSingleton.getInstance();FileOutputStream fos = null;try {fos = new FileOutputStream("SeriableSingleton.obj");ObjectOutputStream oos = new ObjectOutputStream(fos);oos.writeObject(s2);oos.flush();oos.close();FileInputStream fis = new FileInputStream("SeriableSingleton.obj");ObjectInputStream ois = new ObjectInputStream(fis);s1 = (SeriableSingleton)ois.readObject();ois.close();System.out.println(s1);System.out.println(s2);System.out.println(s1 == s2);} catch (Exception e) {e.printStackTrace();}}
}class SeriableSingleton implements Serializable {public  final static SeriableSingleton INSTANCE = new SeriableSingleton();private SeriableSingleton(){}public static SeriableSingleton getInstance(){return INSTANCE;}
}

运行结果为:
在这里插入图片描述

添加readResolve()方法

保证序列化不会破坏单例demo及运行结果

public class SeriableSingletonTest {public static void main(String[] args) {SeriableSingleton s1 = null;SeriableSingleton s2 = SeriableSingleton.getInstance();FileOutputStream fos = null;try {fos = new FileOutputStream("SeriableSingleton.obj");ObjectOutputStream oos = new ObjectOutputStream(fos);oos.writeObject(s2);oos.flush();oos.close();FileInputStream fis = new FileInputStream("SeriableSingleton.obj");ObjectInputStream ois = new ObjectInputStream(fis);s1 = (SeriableSingleton)ois.readObject();ois.close();System.out.println(s1);System.out.println(s2);System.out.println(s1 == s2);} catch (Exception e) {e.printStackTrace();}}
}class SeriableSingleton implements Serializable {public  final static SeriableSingleton INSTANCE = new SeriableSingleton();private SeriableSingleton(){}public static SeriableSingleton getInstance(){return INSTANCE;}private Object readResolve(){return INSTANCE;}
}

运行结果
在这里插入图片描述

原理分析

写在前面:虽然解决了单例模式被破坏的问题,但是实际上实例化了两次,只不过新创建的对象没有被返回,根据如下调用栈即可探明真相readObject()【ObjectInputStream】->readObject0(false)【ObjectInputStream】->readOrdinaryObject(unshared)【ObjectInputStream】

  • 先从demo中转到如下代码:s1 = (SeriableSingleton)ois.readObject();
  • 进入:readObject()【为节省篇幅去掉了对此分析无关代码】
//去掉无用代码
public final Object readObject() { Object obj = readObject0(false);handles.markDependency(outerHandle, passHandle);ClassNotFoundException ex = handles.lookupException(passHandle);if (ex != null) {throw ex;}if (depth == 0) {vlist.doCallbacks();}return obj;}
  • 进入:readObject0(false)【为节省篇幅去掉了对此分析无关代码】
private Object readObject0(boolean unshared) throws IOException {//去掉无用代码switch (tc) {case TC_ENUM:return checkResolve(readEnum(unshared));case TC_OBJECT:return checkResolve(readOrdinaryObject(unshared));case TC_EXCEPTION:IOException ex = readFatalException();throw new WriteAbortedException("writing aborted", ex);default:throw new StreamCorruptedException(String.format("invalid type code: %02X", tc));}}
  • 进入:readOrdinaryObject(unshared)【为节省篇幅去掉了对此分析无关代码】
    • 从该方法中我们可以看到先通过实现反序列化后的对象,如果单例对象中定义了readResolve()方法,则对前面生成的对象进行覆盖,来保证单例。
    • 实际上实例化了两次,只不过第二次实例化的对象没有被返回而已
private Object readOrdinaryObject(boolean unshared) {Class<?> cl = desc.forClass();if (cl == String.class || cl == Class.class|| cl == ObjectStreamClass.class) {throw new InvalidClassException("invalid class descriptor");}Object obj;try {//1. 实例化反序列化对象obj = desc.isInstantiable() ? desc.newInstance() : null;} catch (Exception ex) {throw (IOException) new InvalidClassException(desc.forClass().getName(),"unable to create instance").initCause(ex);}//如果单例对象存在readResolve(),则对第一步【1. 实例化反序列化对象】产生的对象进行覆盖if (obj != null &&handles.lookupException(passHandle) == null &&desc.hasReadResolveMethod()){//进行覆盖Object rep = desc.invokeReadResolve(obj);if (unshared && rep.getClass().isArray()) {rep = cloneArray(rep);}}return obj;}

注册试单例模式

枚举式单例模式

写在前面:枚举式单例模式,无法通过反射及反序列化来破坏单例,是实现单例模式最为优良的方式,并且《Effective Java》一书也推荐使用枚举来实现单例

代码实现

public class EnumSingletonTest {public static void main(String[] args) {//构建两个实例对象System.out.println("测试枚举类型单例--start");EnumSingleton instance1 = EnumSingleton.getInstance();EnumSingleton instance2 = EnumSingleton.getInstance();System.out.println("是否为同一对象:" + (instance1 == instance2));System.out.println();try {System.out.println("测试反射能够破坏单例--start");//测试通过反射能否破坏单例Class clazz = EnumSingleton.class;Constructor c = clazz.getDeclaredConstructor(String.class,int.class);c.setAccessible(true);Object o = c.newInstance();}catch (Exception e){System.out.println("发生异常,不允许通过反射构造Enum实例"+e.getMessage());}finally {System.out.println();}try {EnumSingleton enumSingleton1 = EnumSingleton.getInstance();EnumSingleton enumSingleton2 = null;System.out.println("测试反序列化能够破坏单例--start");ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("EnumSingleton.obj"));oos.writeObject(enumSingleton1);oos.flush();ObjectInputStream ois = new ObjectInputStream(new FileInputStream("EnumSingleton.obj"));enumSingleton2 = (EnumSingleton)ois.readObject();System.out.println("是否为同一对象:" + (enumSingleton1 == enumSingleton2));}catch (Exception e){System.out.println("发生异常,不允许通过反序列化破坏单例"+e.getMessage());}}
}
enum EnumSingleton {INSTANCE;private Object data;public Object getData() {return data;}public void setData(Object data) {this.data = data;}public static EnumSingleton getInstance(){return INSTANCE;}
}

运行结果
在这里插入图片描述

原理详解

  • 为什么想要通过反射破环单例时,获取构造方法时要传入两个参数呢?
    clazz.getDeclaredConstructor(String.class,int.class);
    查看java.lang.Enum类的源码即可发现,其只含有这一个构造器在这里插入图片描述

  • Enum类型是如何防止反射破坏单例的,我们进入Constructor的newInstance()方法即可探明真相
    在这里插入图片描述

  • Enum类型是如何防止反序列化破坏单例的。

    • 写在前面:因为是通过类名及类对象找到唯一的枚举类,所以不会产生多实例
    • 先通过此调用栈readObject()【ObjectInputStream】->readObject0(false)【ObjectInputStream】->readEnum(unshared)【ObjectInputStream】进入readEnum方法。可参见详解readResolve()方法时的原理分析
    • ObjectInputStream.readEnum()方法如下,详见代码:Enum.valueOf((Class)cl, name);
private Enum<?> readEnum(boolean unshared) throws IOException {ObjectStreamClass desc = readClassDesc(false);if (!desc.isEnum()) {throw new InvalidClassException("non-enum class: " + desc);}String name = readString(false);Enum<?> result = null;Class<?> cl = desc.forClass();if (cl != null) {@SuppressWarnings("unchecked")//通过类名及类对象找到唯一的枚举类Enum<?> en = Enum.valueOf((Class)cl, name);result = en;}handles.finish(enumHandle);passHandle = enumHandle;return result;}
  • Enum.valueOf((Class)cl, name);方法如下:
 public static <T extends Enum<T>> T valueOf(Class<T> enumType, String name) {//获取存储的Enum类对象T result = enumType.enumConstantDirectory().get(name);if (result != null)return result;if (name == null)throw new NullPointerException("Name is null");throw new IllegalArgumentException("No enum constant " + enumType.getCanonicalName() + "." + name);}

容器式单例模式

写在前面:Enum实现单例虽有有众多优点,但是当单例数量众多时却不方便管理。仿照spring思想,如果通过一个容器同一存储则更方便管理,但是该方法实现的单例线程不安全也容易被破坏。

demo及运行结果

public class ContainerSingletonTest {public static void main(String[] args) {Object instance1 = ContainerSingleton.getInstance("singleton.container.ContainerSingleton");Object instance2 = ContainerSingleton.getInstance("singleton.container.ContainerSingleton");System.out.println(instance1 == instance2);}
}class ContainerSingleton {private ContainerSingleton(){}//通过容器管理所有的实例private static Map<String,Object> ioc = new ConcurrentHashMap<String, Object>();public static Object getInstance(String className){Object instance = null;if(!ioc.containsKey(className)){try {instance = Class.forName(className).newInstance();ioc.put(className, instance);}catch (Exception e){e.printStackTrace();}return instance;}else{return ioc.get(className);}}}

在这里插入图片描述

spring框架思想验证

在这里插入图片描述

总结

  1. 饿汉式单例:类加载即初始化、线程安全,但是可以通过反射和反序列化破坏其单例,防止通过反射破坏其单例的方式为:当实例化之后再调用构造函数时抛出异常
  2. 懒汉式单例:第一次调用进行初始化、线程不安全,需要通过双重检查锁来实现线程安全,其他与饿汉式单例相同。
  3. 反射破坏单例原理:虽然构造器设置为私有,但是可以通过设置强制访问来调用其构造函数,具体为:c.setAccessible(true);
  4. 序列化破坏单例原理:反序列化后的对象会重新分配内存,即重新创建
  5. readResolve()方法防止反序列化破坏单例原理:在反序列化调用readObject()方法中,会先反序列化一个实例,再进行判断是否定义了该方法,如果定义了该方法,则将刚才反序列化生成的对象进行覆盖。其实实际上实例化了两次,只不过新创建的对象没有被返回
  6. 枚举式单例模式:枚举式单例模式,无法通过反射及反序列化来破坏单例。无法通过反射破坏单例是因为jdk底层做了限制,当发现反射调用的是枚举的构造器时,会抛出“”异常;无法反序列化来破环单例是因为反序列化时如果该Enum类已被实例化则通过类名及类对象找到该枚举类并返回,所以不会产生多实例。是实现单例模式最为优良的方式,并且《Effective Java》一书也推荐使用枚举来实现单例
  7. 容器式单例模式:方便于管理众多的单例对象,但会出现线程安全问题,也会出现反射和反序列化破坏其单例的现象,不过spring中的对象管理通过该方式

▄█▀█●各位同仁,如果我的代码对你有帮助,请给我一个赞吧,为了下次方便找到,也可关注加收藏呀
如果有什么意见或建议,也可留言区讨论

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

相关文章

  1. HCIE第二天总结

    1.对分布路由进行ip地址规划,同时划分路由的区域(AS) 2配置OSPF协议(1)在两台核心交换机与两台边界路由器之间启用OSPF协议,划分在同一个区域内部,宣告各个接口及直连地址 (2)两台核心交换机上利用VRRP配置vlan2与vlan3的网关,宣告网关地址 (3)华为设备需要将与路由…...

    2024/4/14 13:46:20
  2. 要只看每日减少的新增数量,别忘了疫情最开始的时候可能也只有几个人患病

    不要只看每日减少的新增数量,别忘了疫情最开始的时候可能也只有几个人患病...

    2024/4/14 14:47:35
  3. 深度好文《睡觉是在为国家做贡献?NO!》

    睡觉是在为国家做贡献?不对,你“睡觉”做了三件事情:1. 成就了那些“不睡觉”的人;2. 对自己不负责;3.只能说不给国家添乱,但不能说做贡献。其实政府提倡的是不出门或者少出门。那些宣扬“睡觉就是在为国家做贡献”的人更多的是在短视频上圈粉。这部分人或以两口子吵架的…...

    2024/4/15 20:34:25
  4. Fiddler4学习

    本文基于Fiddler 4版本。 问题:fiddler是什么? 解决方案:你女朋友的闺蜜(HTTP代理)。你就是客户端,女朋友就是服务端。问题:fiddler的用途? 解决方案: 1、监听http或者https请求。3、伪造客户端请求和服务端响应。 断点后,AutoResponder和Composer构造请求或响应4、监…...

    2024/4/14 13:47:16
  5. MySQL简介

    数据库存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。而我们本文的MySQL就是众多数据库中的一个!MySQL原理:mysqld就是一个子进程即守护进程;设计原因,如果MySQL服务端意外挂掉,重新建个子进程,就可以重新启动服务端了选择连接的协议,大…...

    2024/4/14 13:46:51
  6. quratz学习记录

    一、quratz概念 quratz就是基于java开发的任务调度框架 官网地址 二、quratz的运行环境可以运行嵌入在另一个独立式的应用框架 可以在应用服务器(或者servlet容器)内被实例化,并且参与事务 可以作为一个独立的程序运行(其自己的java虚拟机中),可以通过RMI使用 可以被实例…...

    2024/4/14 13:46:56
  7. 微服务Spring Cloud之整合Zuul网关

    1.Zuul网关通过之前的介绍,使用Spring Cloud实现微服务的架构基本成型,大致是这样的:我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;而服务间通过Ribbon或Feign实现服务的消费以及均衡负载。为了使得服务集群更为健壮,使用Hystrix的融断机…...

    2024/4/4 19:53:50
  8. 5.数据同步原理

    下图展示了 Soul 数据同步的流程,Soul 网关在启动时,会从从配置服务同步配置数据,并且支持推拉模式获取配置变更信息,并且更新本地缓存。而管理员在管理后台,变更用户、规则、插件、流量配置,通过推拉模式将变更信息同步给 Soul 网关,具体是 push 模式,还是 pull 模式取…...

    2024/4/4 19:53:48
  9. 阿里云服务器通过外网ip访问服务器之tomcat配置

    1.tomcat默认端口为8080,首先在云服务器控制台配置安全组规则,如下图2.配置tomcat的配置文件server.xml。找到tomcat文件目录下的conf,打开里面的配置文件server.xml,将标签<Host>里面的name值改为你的外网ip,就能通过http://你的外网ip:8080访问了...

    2024/4/4 19:53:47
  10. ThinkPHP5.1 多图片,多文件打压缩包

    ThinkPHP5.1 多图片,多文件打压缩包 情景:前端下载一个以上图片,采用下载压缩包方法 使用PHP自带的ZipArchive类 开启压缩类的方法 这里我将方法大概描述一下避免链接失效 Windows环境: 首先需要从官网上下载,下载地址 https://windows.php.net/downloads/pecl/releases/z…...

    2024/4/20 6:18:25
  11. 解决Mac IntelliJ IDEA 卡顿问题

    大家好,我又发布博客啦,遇到有实用的小技巧就想写篇博客记录下来,废话不多说,我来介绍一下这篇博客的主要用处!! 机器配置:用Idea已经好旧了,之前项目小的时候不会出什么问题,最近开发的项目是比较大型了,写代码的时候老是遇到Idea卡顿,电脑发热、风扇呼呼呼的响。然…...

    2024/4/18 10:31:06
  12. 学好Java设计模式--工厂模式

    一篇文章读懂工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。如果创…...

    2024/4/14 13:46:46
  13. The difference between social network and community

    理解自网页https://community.khoros.com/t5/Khoros-Community-Blog/Community-vs-Social-Network/ba-p/5283 social network social network是根据个人的社交关系建立起来的。每个人都有一个独一无二的social network。社交网络最大的特点是其独特性,因为每个人的朋友、亲戚、…...

    2024/4/20 14:15:08
  14. JavaScript是否具有接口类型(例如Java的“接口”)?

    本文翻译自:Does JavaScript have the interface type (such as Javas interface)? Im learning how to make OOP with JavaScript . 我正在学习如何使用JavaScript制作OOP 。 Does it have the interface concept (such as Javas interface )? 它是否具有接口概念(例如Jav…...

    2024/4/14 13:47:01
  15. 关于阿里云服务器中Tomcat的中的localhost改为外网ip无法访问的问题

    最近租了个阿里云服务器,然后倒腾了一下,在装好环境测试Tomcat的时候发现,本地用localhost访问没有问题,但是当把Host中的localhost改为外网ip时,再随便用台电脑访问外网ip发现访问不了,然后网上查了一下,都没有解决问题,后面在阿里云官网文档中找到了答案。网上查到的…...

    2024/4/19 1:13:03
  16. 慕课网《Mybatis缓存详解》视频学习笔记

    视频地址:https://www.imooc.com/learn/1238 代码地址:https://github.com/gaohanghang/mybatisCache简介:基于mybatis 3.5.1版本,全面介绍mybatis一级缓存、二级缓存以及自定义缓存的使用方法、实现原理、应用场景、优缺点等,并进行现场验证第1章 课程介绍 1-1 课程介绍 …...

    2024/4/20 14:01:45
  17. 病毒基因分类

    病毒基因分类 输入多个国家的新型冠状病毒的基因组数据,通过子串(kmer)词频分析,挖掘国家间的特征子串,用于病毒的分类。 1.数据预处理 (1)字符串分割与子串统计 def kmer(str1,N):"""str1:要分割的字符串N:子串的长度return :返回一个统计好的字典&quo…...

    2024/4/14 13:46:00
  18. 电路设计、分析、仿真之2:电流检测及保护电路仿真

    原理图注: V1代替电流采样信号。差分电路仿真和分析 差分电路由U1D及周边元件所组成。 其放大倍数为15K/1K=15倍。仿真分析由上图测试结果可知,当输入-0.2V*1.414=-0.283V时,输出4.2411V跟理论计算相符有源精密检波电路分析 有源精密检波电路由U1B及周边元件组成。计算分析 当…...

    2024/4/14 13:46:46
  19. 每日一题 - 剑指 Offer 63. 股票的最大利润

    每日一题 - 剑指 Offer 63. 股票的最大利润 题目信息时间: 2019-07-06题目链接:Leetcodetag:动态规划难易程度:中等题目描述: 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?示例1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在…...

    2024/4/8 18:58:00
  20. 任务与返回堆栈

    任务 任务是用户在执行某项工作时与之互动的一系列 Activity 的集合。这些 Activity 按照每个 Activity 打开顺序排列在一个返回堆栈中。 大多数任务都从设备主屏幕上启动。当用户轻触应用启动器中的图标(或主屏幕上的快捷方式)时,该应用的任务就会转到前台运行,如果该应用没…...

    2024/4/14 13:47:06

最新文章

  1. MinIO分布式文件系统介绍

    1、不同存储方式的对比&#xff1a; 2、 分布式文件系统对比 3、MinIO的特点 MinIO特点 数据保护&#xff1a;Minio使用Minio Erasure Code&#xff08;纠删码&#xff09;来防止硬件故障。即便损坏一半以上的driver&#xff0c;但是仍然可以从中恢复。 高性能&#xff1a;作…...

    2024/4/27 5:22:01
  2. 梯度消失和梯度爆炸的一些处理方法

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

    2024/3/20 10:50:27
  3. 基于SSM的周边乡村旅游小程序

    系统实现 游客注册通过注册窗口&#xff0c;进行在线填写自己的账号、密码、姓名、年龄、手机、邮箱等&#xff0c;信息编辑完成后核对信息无误后进行选择注册&#xff0c;系统核对游客所输入的账号信息是否准确&#xff0c;核对信息准确无误后系统进入到操作界面。 游客登录通…...

    2024/4/19 0:02:04
  4. 蓝桥杯加训

    1.两只塔姆沃斯牛&#xff08;模拟&#xff09; 思路&#xff1a;人和牛都记录三个数据&#xff0c;当前坐标和走的方向&#xff0c;如果人和牛的坐标和方向走重复了&#xff0c;那就说明一直在绕圈圈&#xff0c;无解 #include<iostream> using namespace std; const i…...

    2024/4/23 12:04:51
  5. Spring集成MyBatis

    基本准备 创建Dynamic Web Project 引入相关jar包 Spring框架相关jar包 MyBatis连接Spring相关jar包 连接MySQL驱动包 JSTL标签库包 添加db.properties文件&#xff0c;该属性文件配置连接数据库相关信息 drivercom.mysql.jdbc.Driver urljdbc:mysql://localhost:3306/myba…...

    2024/4/23 6:22:22
  6. 【外汇早评】美通胀数据走低,美元调整

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

    2024/4/26 18:09:39
  7. 【原油贵金属周评】原油多头拥挤,价格调整

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

    2024/4/26 20:12:18
  8. 【外汇周评】靓丽非农不及疲软通胀影响

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

    2024/4/26 23:05:52
  9. 【原油贵金属早评】库存继续增加,油价收跌

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

    2024/4/27 4:00:35
  10. 【外汇早评】日本央行会议纪要不改日元强势

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

    2024/4/25 18:39:22
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

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

    2024/4/25 18:39:22
  12. 【外汇早评】美欲与伊朗重谈协议

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

    2024/4/26 21:56:58
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

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

    2024/4/25 16:48:44
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

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

    2024/4/26 16:00:35
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

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

    2024/4/25 18:39:16
  16. 【外汇早评】美伊僵持,风险情绪继续升温

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

    2024/4/25 18:39:16
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

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

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

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

    2024/4/26 22:01:59
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

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

    2024/4/25 18:39:14
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

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

    2024/4/26 23:04:58
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

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

    2024/4/25 2:10:52
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

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

    2024/4/25 18:39:00
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

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

    2024/4/26 19:46:12
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

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

    2024/4/25 18:38:58
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

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

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

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

    2022/11/19 21:17:18
  27. 错误使用 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
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

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

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

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

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

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

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

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

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

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

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

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

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,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
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    2022/11/19 21:16:58
  45. 如何在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