Java(3)之BIO与NIO的区别详解
最近大概看了ZooKeeper和Mina的源码发现都是用Java NIO实现的,所以有必要搞清楚什么是NIO。下面是我结合网络资料自己总结的,为了节约时间图示随便画的,能达意就行。
简介:
BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。
NIO:同步非阻塞式IO,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。
AIO(NIO.2):异步非阻塞式IO,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理。
BIO
同步阻塞式IO,相信每一个学习过操作系统网络编程或者任何语言的网络编程的人都很熟悉,在while循环中服务端会调用accept方法等待接收客户端的连接请求,一旦接收到一个连接请求,就可以建立通信套接字在这个通信套接字上进行读写操作,此时不能再接收其他客户端连接请求,只能等待同当前连接的客户端的操作执行完成。
如果BIO要能够同时处理多个客户端请求,就必须使用多线程,即每次accept阻塞等待来自客户端请求,一旦受到连接请求就建立通信套接字同时开启一个新的线程来处理这个套接字的数据读写请求,然后立刻又继续accept等待其他客户端连接请求,即为每一个客户端连接请求都创建一个线程来单独处理,大概原理图就像这样:
虽然此时服务器具备了高并发能力,即能够同时处理多个客户端请求了,但是却带来了一个问题,随着开启的线程数目增多,将会消耗过多的内存资源,导致服务器变慢甚至崩溃,NIO可以一定程度解决这个问题。
NIO
同步非阻塞式IO,关键是采用了事件驱动的思想来实现了一个多路转换器。
NIO与BIO最大的区别就是只需要开启一个线程就可以处理来自多个客户端的IO事件,这是怎么做到的呢?
就是多路复用器,可以监听来自多个客户端的IO事件:
A. 若服务端监听到客户端连接请求,便为其建立通信套接字(java中就是通道),然后返回继续监听,若同时有多个客户端连接请求到来也可以全部收到,依次为它们都建立通信套接字。
B. 若服务端监听到来自已经创建了通信套接字的客户端发送来的数据,就会调用对应接口处理接收到的数据,若同时有多个客户端发来数据也可以依次进行处理。
C. 监听多个客户端的连接请求和接收数据请求同时还能监听自己时候有数据要发送。
总之就是在一个线程中就可以调用多路复用接口(java中是select)阻塞同时监听来自多个客户端的IO请求,一旦有收到IO请求就调用对应函数处理。
各自应用场景
到这里你也许已经发现,一旦有请求到来(不管是几个同时到还是只有一个到),都会调用对应IO处理函数处理,所以:
(1)NIO适合处理连接数目特别多,但是连接比较短(轻操作)的场景,Jetty,Mina,ZooKeeper等都是基于java nio实现。
(2)BIO方式适用于连接数目比较小且固定的场景,这种方式对服务器资源要求比较高,并发局限于应用中。
附录:下面附上一个别人写的java NIO的例子。
服务端:
1. package cn.nio;
2.
3. import java.io.IOException;
4. import java.net.InetSocketAddress;
5. import java.nio.ByteBuffer;
6. import java.nio.channels.SelectionKey;
7. import java.nio.channels.Selector;
8. import java.nio.channels.ServerSocketChannel;
9. import java.nio.channels.SocketChannel;
10. import java.util.Iterator;
11.
12. /**
13. * NIO服务端
14. *
15. */
16. public class NIOServer {
17. //通道管理器
18. private Selector selector;
19.
20. /**
21. * 获得一个ServerSocket通道,并对该通道做一些初始化的工作
22. * @param port 绑定的端口号
23. * @throws IOException
24. */
25. public void initServer(int port) throws IOException {
26. // 获得一个ServerSocket通道
27. ServerSocketChannel serverChannel = ServerSocketChannel.open();
28. // 设置通道为非阻塞
29. serverChannel.configureBlocking(false);
30. // 将该通道对应的ServerSocket绑定到port端口
31. serverChannel.socket().bind(new InetSocketAddress(port));
32. // 获得一个通道管理器
33. this.selector = Selector.open();
34. //将通道管理器和该通道绑定,并为该通道注册SelectionKey.OP_ACCEPT事件,注册该事件后,
35. //当该事件到达时,selector.select()会返回,如果该事件没到达selector.select()会一直阻塞。
36. serverChannel.register(selector, SelectionKey.OP_ACCEPT);
37. }
38.
39. /**
40. * 采用轮询的方式监听selector上是否有需要处理的事件,如果有,则进行处理
41. * @throws IOException
42. */
43. @SuppressWarnings("unchecked")
44. public void listen() throws IOException {
45. System.out.println("服务端启动成功!");
46. // 轮询访问selector
47. while (true) {
48. //当注册的事件到达时,方法返回;否则,该方法会一直阻塞
49. selector.select();
50. // 获得selector中选中的项的迭代器,选中的项为注册的事件
51. Iterator ite = this.selector.selectedKeys().iterator();
52. while (ite.hasNext()) {
53. SelectionKey key = (SelectionKey) ite.next();
54. // 删除已选的key,以防重复处理
55. ite.remove();
56. // 客户端请求连接事件
57. if (key.isAcceptable()) {
58. ServerSocketChannel server = (ServerSocketChannel) key
59. .channel();
60. // 获得和客户端连接的通道
61. SocketChannel channel = server.accept();
62. // 设置成非阻塞
63. channel.configureBlocking(false);
64.
65. //在这里可以给客户端发送信息哦
66. channel.write(ByteBuffer.wrap(new String("向客户端发送了一条信息").getBytes()));
67. //在和客户端连接成功之后,为了可以接收到客户端的信息,需要给通道设置读的权限。
68. channel.register(this.selector, SelectionKey.OP_READ);
69.
70. // 获得了可读的事件
71. } else if (key.isReadable()) {
72. read(key);
73. }
74.
75. }
76.
77. }
78. }
79. /**
80. * 处理读取客户端发来的信息 的事件
81. * @param key
82. * @throws IOException
83. */
84. public void read(SelectionKey key) throws IOException{
85. // 服务器可读取消息:得到事件发生的Socket通道
86. SocketChannel channel = (SocketChannel) key.channel();
87. // 创建读取的缓冲区
88. ByteBuffer buffer = ByteBuffer.allocate(10);
89. channel.read(buffer);
90. byte[] data = buffer.array();
91. String msg = new String(data).trim();
92. System.out.println("服务端收到信息:"+msg);
93. ByteBuffer outBuffer = ByteBuffer.wrap(msg.getBytes());
94. channel.write(outBuffer);// 将消息回送给客户端
95. }
96.
97. /**
98. * 启动服务端测试
99. * @throws IOException
100. */
101. public static void main(String[] args) throws IOException {
102. NIOServer server = new NIOServer();
103. server.initServer(8000);
104. server.listen();
105. }
106.
107. }
客户端:
1. package cn.nio;
2.
3. import java.io.IOException;
4. import java.net.InetSocketAddress;
5. import java.nio.ByteBuffer;
6. import java.nio.channels.SelectionKey;
7. import java.nio.channels.Selector;
8. import java.nio.channels.SocketChannel;
9. import java.util.Iterator;
10.
11. /**
12. * NIO客户端
13. *
14. */
15. public class NIOClient {
16. //通道管理器
17. private Selector selector;
18.
19. /**
20. * 获得一个Socket通道,并对该通道做一些初始化的工作
21. * @param ip 连接的服务器的ip
22. * @param port 连接的服务器的端口号
23. * @throws IOException
24. */
25. public void initClient(String ip,int port) throws IOException {
26. // 获得一个Socket通道
27. SocketChannel channel = SocketChannel.open();
28. // 设置通道为非阻塞
29. channel.configureBlocking(false);
30. // 获得一个通道管理器
31. this.selector = Selector.open();
32.
33. // 客户端连接服务器,其实方法执行并没有实现连接,需要在listen()方法中调
34. //用channel.finishConnect();才能完成连接
35. channel.connect(new InetSocketAddress(ip,port));
36. //将通道管理器和该通道绑定,并为该通道注册SelectionKey.OP_CONNECT事件。
37. channel.register(selector, SelectionKey.OP_CONNECT);
38. }
39.
40. /**
41. * 采用轮询的方式监听selector上是否有需要处理的事件,如果有,则进行处理
42. * @throws IOException
43. */
44. @SuppressWarnings("unchecked")
45. public void listen() throws IOException {
46. // 轮询访问selector
47. while (true) {
48. selector.select();
49. // 获得selector中选中的项的迭代器
50. Iterator ite = this.selector.selectedKeys().iterator();
51. while (ite.hasNext()) {
52. SelectionKey key = (SelectionKey) ite.next();
53. // 删除已选的key,以防重复处理
54. ite.remove();
55. // 连接事件发生
56. if (key.isConnectable()) {
57. SocketChannel channel = (SocketChannel) key
58. .channel();
59. // 如果正在连接,则完成连接
60. if(channel.isConnectionPending()){
61. channel.finishConnect();
62.
63. }
64. // 设置成非阻塞
65. channel.configureBlocking(false);
66.
67. //在这里可以给服务端发送信息哦
68. channel.write(ByteBuffer.wrap(new String("向服务端发送了一条信息").getBytes()));
69. //在和服务端连接成功之后,为了可以接收到服务端的信息,需要给通道设置读的权限。
70. channel.register(this.selector, SelectionKey.OP_READ);
71.
72. // 获得了可读的事件
73. } else if (key.isReadable()) {
74. read(key);
75. }
76.
77. }
78.
79. }
80. }
81. /**
82. * 处理读取服务端发来的信息 的事件
83. * @param key
84. * @throws IOException
85. */
86. public void read(SelectionKey key) throws IOException{
87. //和服务端的read方法一样
88. }
89.
90.
91. /**
92. * 启动客户端测试
93. * @throws IOException
94. */
95. public static void main(String[] args) throws IOException {
96. NIOClient client = new NIOClient();
97. client.initClient("localhost",8000);
98. client.listen();
99. }
100.
101. }
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- C语言字符数组移位
有两个字符数组,将a数组中的元素拷贝到b数组中下面的C的实现代码:[plain] viewplain copy#include<stdio.h> void main() { char a[] = "I am a boy.", b[20], *p1, *p2; p1 = a; p2 = b; while(*p1) { *p2++ = *p1++; //printf("p1 - a = %d …...
2024/4/17 0:09:42 - Google地图切割以及类似Google的开源API
偶尔去了趟MAPINFO的论坛,看到了这么个Google地图切割的例子,觉得不错,就在此转载过来。是一个MapBasic做的程序,把当前MapInfo地图窗口保存为PNG文件格式,并且图片名称已经按坐标规律命名了。由于一直没有研究过Google,所以我只试用了下,发现不错。看来我的MapBasic功力…...
2024/4/24 16:21:11 - promise源码分析、Promise和async-await的区别与联系
详解Promise/Promise/A+ 规范 Promise原理与实现 简述promise原理 Promise内部实现的原理 源码太长了看不懂kkkk async-await和Promise的关系 promise与async和await的区别...
2024/4/24 16:21:18 - BIO+多线程实现BIO模型
BIO+多线程实现BIO模型服务端public class BIOServer{//默认的端口号private static int DEFAULT_PORT = 12345;//单例的ServerSocketprivate static ServerSocket server;//根据传入参数设置监听端口,如果没有参数调用以下方法并使用默认值public static void start() throws…...
2024/4/24 16:21:09 - 用java写一个电子书阅读器,怎么进行自动内码识别,求大神指教
还有一个就是,当我设置字体时,为什么汉子会变成乱码?...
2024/4/24 16:21:09 - Linux环境下Neo4j安装步骤及配置Neo4j服务器允许远程访问
Linux环境下Neo4j安装步骤及配置Neo4j服务器允许远程访问一、安装步骤:下载Neo4j,jdk1.8.0_171去Neo4j官网(https://neo4j.com/download/other-releases/)下载相应安装包,选择社区版(Community),选择 linux 版本;下载Java8,网址如下http://www.oracle.com/technetwor…...
2024/4/24 16:21:07 - C语言中的数据移位
买了一个东流的hot-51开发板,由于液晶的数据口和P0口的位刚好相反,也就是D0和P0^7……D7和P0^0相对应,所以造成了数据读写很不方便,所以把P0口的数据将最高位依次与最低位,次高位与次地位轮调,也就是第0个口和第7个口,第1口和第6口,第2口和第5口对调……,东流是写了子…...
2024/4/24 16:21:06 - Flutter学习—Dart的异步(async await)和Future对象的使用
因为Dart是单线程的语言,所以如果线程中顺序执行的时候如果遇到一些耗时阻塞的操作,比如数据请求,延时操作等,就会产生卡顿,所以用异步来解决。 异步代码主要是用async await实现,熟悉js的同学应该非常熟悉,这里的使用方法也和js很像。这里举个简单的例子说明(代码比较…...
2024/5/6 10:09:43 - MapInfo数据交换文件格式浅探
MapInfo数据交换文件格式浅探摘 要:MAPINFO这一大型桌面地理信息系统软件提供了tab格式和MIF(MID)两种数据格式,其中tab是其内部数据存储格式,所有基于该软件的应用系统都以此格式为依托。MIF(MID)是MAPINFO的外部数据交换文件格式,MAPINFO主要通过MIF,MID两个文件与…...
2024/4/24 16:21:07 - Condition的await()方法
public final void await() throws InterruptedException {if (Thread.interrupted())throw new InterruptedException();Node node = addConditionWaiter();//释放同步状态(锁)int savedState = fullyRelease(node);int interruptMode = 0;//判断节点是否放入同步对列while …...
2024/4/24 16:21:03 - C语言的位操作方法
嵌入式里面经常用,面试题里面也经常出现:1、对某位置1,即赋值为1a |= (1<<5);//把a 的第6位(bit5)置一,其他位不变2、对某位清0,其他位不变a &= !(1<<5);//括号内 1左移5位:0010 0000,按位取反:1101 1111,即把a 的第6位(bit5)清0,其他位不变3…...
2024/4/25 23:05:40 - 9个基于Java的搜索引擎框架
1、Java 全文搜索引擎框架 Lucene 毫无疑问,Lucene是目前最受欢迎的Java全文搜索框架,准确地说,它是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene为开发人员提供了相当完整的工具包,可以非常方便地实现强大的全文检索功能。下面有几…...
2024/4/24 16:21:01 - 第一次启动neo4j
第一次使用neo4j 安装neo4j后启动后浏览器访问没反应 开发模式下有一个 is not a constructor错误启动neo4j成功了...
2024/4/24 16:21:01 - 如何使用mapinfo对地图分层设色并导出为图片
说起地图的制作,大家首先想到的可能是ArcGIS,没错,ArcGIS在地图制作方面确实使用十分的广泛。但是,在能使用ArcGIS的基础上也可以尝试一下别的软件,比如这里要讲的mapinfo。 步骤 第一步:数据的获取 首先是到万能地图下载器内下载需要的矢量数据,点击右上角菜单栏上的“…...
2024/4/30 10:52:47 - 同步阻塞的BIO 同步非阻塞的NIO、异步非阻塞的AIO的区别
BIO与NIO、AIO的区别(这个容易理解)2016年10月20日 15:52:4947819 IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socke…...
2024/4/24 16:20:58 - 参照dva-loading使用async和await完成全局loading
大家都知道react有生命周期,我们想有个方法监听全局的ajax和元素渲染,完成前loading,完成后loading消失,难点在于多个ajax请求,你很难有效的判断啥时候全部ajax请求结束,传统的方案是轮询,但是这种方案具有一定的延时性,我们想着如果能让程序自己判断就好啦,于是我们就…...
2024/4/24 16:20:57 - 2019地图数据下载
百度地图poi 高德地图poi 下载,2018全国较新poi数据下载,内容包含:餐饮、宾馆、购物、生活服务、旅游景点、休闲娱乐、医疗、汽车服务、交通设施、金融、商务大厦、地产小区、公司企业、道路和政府机构(名称 地址 分类 经纬度等内容),数据量共7.5千万条全国地图poi数据-下…...
2024/4/24 16:20:56 - 安装Neo4j,配置环境变量,python测试
一、下载安装Neo4j下载地址,https://neo4j.com/download/,点击箭头指向的红框,下载社区版。解压在指定目录二、配置环境变量编辑环境变量新建系统变量,命名 NEO4J_HOME,E:\neo4j-community-3.5.14编辑系统变量Path,新建%NEO4J_HOME%\bin测试安装是否成功,以管理员身份运…...
2024/5/5 9:12:47 - 【C】移位操作 处理乘法
今天在douban上面看到了一个帖子,里面关于乘法问题大家讨论了一下 http://www.douban.com/group/topic/8384097/看到移位做乘法也不是第一次了,但是很诧异真的会在用,自己水平还就差了那么一点点,无可否认,我们处理器的ALU做移位是相当高效的。 这里记录一下里面的一个移位…...
2024/5/5 11:23:34 - Java 解析epub格式电子书,helloWorld程序,附带源程序和相关jar包
秀才坤坤出品 一、epub格式电子书 相关材料和源码均在链接中可以下载:http://pan.baidu.com/s/1bnm8YXT 包括 1、JAVA项目工程test_epub,里面包括了jar包和一本epub电子书myBook.epub 2、epub相关jar包 3、电子书myBook.epub epub格式这里就不仔细描述了,这里强调一点,epub…...
2024/5/5 8:52:55
最新文章
- 嵌入式系统应用-拓展-FLASH之操作 SFUD (Serial Flash Universal Driver)之KEIL应用
这里已经假设SFUD代码已经移植到工程下面成功了,如果读者对SFUD移植还不了解。可以参考笔者这篇文章:SFUD (Serial Flash Universal Driver)之KEIL移植 这里主要介绍测试和应用 1 硬件设计 这里采用windbond 的W25Q32这款芯片用于SFUD测试。 W25Q32是…...
2024/5/6 23:31:35 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/6 9:38:23 - nodeJs 实现视频的转换(超详细教程)
前段时间拿到一个视频是4k的,没法播放,于是通过 node.js 和 ffmpeg 实现了视频的转换。在win10 系统下实现。 所需工具 node 16.19 直接安装 ffmpeg-5.1.1-essentials_build 解压后重名 ffmpeg 放到C盘 然后配置下环境变量 Git-2.42.0.2-64-bit 直接…...
2024/5/6 12:14:00 - OpenAI 宣布, ChatGPT 网页端无需注册就能立即使用(2024年4月1日)
今天,OpenAI宣布,为了让更多人轻松体验人工智能的强大功能,现在无需注册账户即可立即使用 ChatGPT。这一变化是他们使命的核心部分,即让像 ChatGPT 这样的工具广泛可用,让世界各地的人们都能享受到 AI 带来的好处。 网…...
2024/5/5 19:55:36 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/4 23:54:56 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/4 23:54:56 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/6 9:21:00 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/4 23:55:16 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/4 23:55:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/4 23:55:06 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/4 23:55:06 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/4 23:55:16 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/6 21:42:42 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) 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 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在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