TCP在网络协议(网络协议见这篇文章)中是非常重要的,要说有多重要的话,那就像珍珠奶茶的奶茶一样。

1. 三次握手

  TCP在进行数据的传输之前必须先建立连接,建立之后才能进行数据的传输,那么所谓的建立连接是怎么回事呢?来看下其三次握手。

三次握手

  1. 客户端发送SYNseq序列号,SYN为标识位,意思为请求同步,seq是此次包的序列号,序列号是单调递增的,作用是保证传输的可靠性,在丢包的时候能确定丢的是哪个包。
  2. 服务端收到消息之后,发送确认的信息,包括标识位SYN和ACK(表确认作用)、确认信息ack=客户端发送的seq+1,seq=自己的seq。seq和ack的确认机制知道确认的是哪个包。
  3. 客户端收到服务端的确认消息(也是请求同步的信息)之后,回复其同步消息,发送ACK=1和ack=服务端的seq+1还有自己的seq(值为第一次的seq+1,要单调递增),此时客户端这边的连接已经完成了。
  4. 服务端接收到客户端的消息之后,服务端这边的连接也完成,至此三次握手圆满结束,接下来就可以传输数据了。

  三次握手的流程并不复杂,概括就是:客户端向服务端发送同步请求,服务端确认并向客户端发送同步请求,客户端确认,连接完成。

  但是在这简单的流程中有几个问题需要思考:

  • 为什么需要三次握手?
  • 服务端有超时重传机制吗?确认包发送之后一段时间没收到响应会重发吗,还是等待客户端重发包。
  • 客户端收到服务端的确认消息之后能发送数据吗,即第二次握手完成的时候客户端能向服务端发送数据吗?

  上面这些问题是不是除了第一个其他的都没想过?你可能会说,“那肯定啊,谁没事去想这玩意,我学TCP都是为了面试的时候能够把三次握手四次挥手说出来。”

  哼!对于这种想法,我只能说:

同道中人

  不过如果想造火箭,自己总不能是一颗汽车的轮子吧(布加迪威龙除外),所以必要的思考很重要。那来看看这几个问题

  • 为什么要三次握手?

    答:因为四这个数字不吉利。

    打头

      开个玩笑,麻烦把砖头收一收。首先我们得理解TCP是双方的连接,也就是说**只有确定客户端和服务端的发送和接收都是没问题的这个连接才算完成。**那来看下,第一次握手略过,第二次握手也就是客户端接收到服务端的确认消息时,这里证明了两个问题:

    1. 服务端的确认消息中的ack是自己的seq+1,说明服务端收到了自己刚才发的包并且能够明白。
    2. 自己收到确认消息说明服务端的发送端正常,自己的接收端正常。

      到第二次握手这里已经证明了三个所需条件:**客户端的发送和接收正常、服务端的发送正常。**还少一个服务端的接收,所以客户端要再发一次给服务端的确认包,让服务端也知道其发送和接收是正常的,所以总共是三次。

  • 服务端有超时重传机制吗?

      有的,如刚才所说,TCP是双端的协议,服务端是接收方也是发送方,所以是有超时重传的机制。比如说第三次握手客户端向服务端发送消息时由于网络原因丢包了,那么服务端一段时间后没收到消息就会重发。

  • 客户端收到服务端的确认消息之后能发送数据吗?

      意思就是说,在第二次握手完成后,客户端能不能向服务端发送数据。在回答这个问题之前,我先问一个问题,这时候客户端这边已经确认发送和接收没问题了,现在不能发,什么时候能发呢?所以是可以的,就算丢包也有确认应答和重发机制来保证。

    ​  三次握手结束之后,就可以进行数据的传输,这里有长连接短连接之分。可能放在这里比较陌生,但是另一个协议——HTTP的长连接和短连接应该都知道了,其本质就是TCP的长连接和短连接,而且作用是一样的,短连接在发送一次数据后就进行关闭,长连接则保持直到主动选择关闭分开。

    说到分开,让我不由得想起那一年四月,夕阳淌在她的脸上,她用纤细的手指挽起了耳边的秀发,转过头对我说:“我们之间已经没有什么能给对方的了,总要一个人先开口,就像TCP’四次挥手’一样!”

    醒醒,程序猿哪里有女朋友。

女朋友呢X

2. 四次挥手

  不知道怎么开头,先给大家看个宝贝吧。

四次挥手2

  看了这张图都是字母,即便你告诉我这就是四次挥手,但这就像JOJO一样,一开始我是难以接受的。没有关系,鲁迅说过,“四次挥手比起机械的记忆,尝试去理解带来的性价比可能要高得多。”

  我们一开始也说过,TCP是双方的协议,所以双方要有沟通,这样才能正确的关闭通道。而TCP的沟通,是这样的:

客户端:“我这边数据发完了,我要把我这边的发送通道关了,你看下你那边有没有什么问题。”

服务端:“嗯,我数据接收完了,你关吧,我把我这边的接收通道也关了。”

  okay,这样客户端关闭了发送通道,服务端关闭了接收通道(注意,只能由发送通道发起聊天)。过了一段时间后,服务端这边的数据也都传输完了,他也想关闭了。

服务端:“我这边的数据也发完了,我这边把发送通道关了就下班了,你还有什么问题吗?”

客户端:“我这边也接收完了,你关吧,我也把这边的接收通道关了。等下下班后一起去修车吗?”

此时客户端还不能直接关完走人,因为他不知道修车地址啊(可恶)。说错了,是他担心服务端没收到他的消息,那需要等他个2MSL吧,如果服务端真的没收到会重新发信息过来的,到时候我再发一次就行。

  到这里再回过头来看上面那张图。emem,是不是完全搞懂了。

原来是这样07e0tj

  (不理解再慢慢看看)个人觉得图中最重要的应该是TIME_WAIT状态,以及为什么要等2MSL,顺便说下MSL是报文单位,不想懂可以理解为另一种意义的秒。

  所以以后再被问为什么要四次挥手?你就说为了一起修车(不是)。

3. TCP是如何保证可靠性的

  当我们被问到TCP和UDP的区别时,我们总会回答:"TCP是可靠的,而UDP是不可靠的。"但TCP为什么是可靠的,是怎么保证其可靠性的可能就没那么多人知道了。

  1. 校验和
  2. 序号和确认应答:
  3. 超时重传
  4. TCP不处理重复的包
  5. ARQ协议
  6. 流量控制
  7. 拥塞控制

  上面这些就是TCP可靠性的基石,来看下这些基石长什么样。

  • 校验和

      将头部和数据通过一个算法得到一个结果,这个结果就是校验和。校验和是防止包在传输的过程中被修改,接收端接收到包也会通过特定的算法来检测校验和是否能对上。

  • 序号和确认应答

      这在上方三次握手的时候也有涉及到,意思就是在发送方每次发送的包都是有序号的,如果包丢了,就要重新发下这个序号对应的包,而确认应答机制可以做到让发送端知道该重发的是哪个包。

    丢包三次确认

      如上图,在传输的过程中,如果中途丢了一个包,例如上图的11-20的包,那么接收方就会不断的确认1-10的包,即便收到21-30的包,发送方收到三次这样的确认之后便判定包已丢失进行重发。

  • 超时重传

      这就没什么好说的,无论是服务端还是客户端在发送之后都会启动一个定时器,一段时间之后没收到确认定时器就会触发重发。

  • TCP不处理重复的包

      假设现在网络很慢,客户端发了消息之后一直没收到回复,就会重发,两次或者更多次,而且发的是同一个序号的包,那么这时服务端可能先收到一个包,进行处理后发送确认消息,之后又收到了同一个序号的包,此时便不做处理,直接丢弃,对于后面来的相同序号的包也执行相同的操作。

  • 连续ARQ协议

      TCP采用的是连续ARQ协议,大致的意思就是说,有数据不马上发,等待凑齐一定数量或者到了最大等待时间再发,凑齐一定的数量称为一组,而连续ARQ协议就是说不用等待确认消息再发下一组,可以连续发多组。(ARQ协议还有另外一种,有兴趣的可以自己了解下)

  • 流量控制

      在介绍流量控制之前,先提出一个问题**:服务端有没有可能出现接收不过来的情况?**肯定有,不然我接下来的内容怎么写。

      那么如果出现这样的情况,会有怎么样的后果呢?

    服务端处理不过来,给客户端的响应就会变慢,而客户端收不到响应触发超时重传,哦吼,服务端本来就忙不过来,你还一直施加压力,这不是让服务端往死路逼嘛。

    做不到aai

    而流量控制,就是为了解决这种问题的。那么流量控制究竟做了什么呢?

    首先,发送方和接收方双发之间都维护了一个窗口,叫滑动窗口。接收方的窗口规定了还能接收多少数据,而发送方的窗口则规定了还能发送多少数据。接收方在回复确认信息的时候会将其能接收的大小发给发送方,发送方的窗口大小则取最小值Math.min{接收窗口大小,网络窗口大小(下个节点讲)}。如果接收窗口的大小为0,那么发送方将不再传输数据,而是采用发送探测包的形式检测是否能继续发送数据。

  • 拥塞控制

    假设有这样一个场景:

    客户端发出了一个包,由于网络原因,导致了重发,但还是得不到响应,所以就不断的重发,在这停住,然后把视野抽出来,看到有几亿个客户端如此,继续放送,现在会发生什么呢?

    原本网络由于某些原因可能只有一点堵塞,但是由于n个客户端进行了多次的重发操作,导致一下子就拥堵了起来,拥堵又会导致更多的客户端超时而重发,从而进入一个恶性循环,这,自然是不行的。

    那咋办呢?还能咋办,遇事不决,限流解决。限流要限多少呢?无论定多少都感觉会错,那从1开始逐渐逐渐往上升,总能有一个是对的吧?好想法!!!于是便有了慢启动算法,见下图。

    慢启动
    (此图片来源网络,若有侵权联系我删除)

    首先,发送方不是一下子发送所有数据,而是从小事做起,先发一个,如果正常那么发两倍,如此如此,直到到了一个阈值,如上图中的16,此时不能再两倍发了(因为再这样很容易就超时),所以+1发,就这样一直到到超时。如果发生了超时,阈值调整为发生超时时的一半,并且发送发从1开始按照上方的算法继续走。这就是慢启动算法。

    注意发送方能发的包大小还得看另一个参数——接收方的接收窗口大小,见上方流量控制的介绍。发送方的发送数据大小=min{接收方接收窗口,慢启动算法网络窗口},也就是两个的最小值。


    有了上面这些,还有谁能质疑TCP的可靠性呢?

还有谁5k05k748

如果觉得文章对你有帮忙,希望关注没事。[双手合十]

本文为博客园文章,点此跳转
博客园求关注——博客园地址

参考:

https://blog.csdn.net/sinat_36629696/article/details/80740678

https://www.cnblogs.com/taoshihan/p/11215289.html

https://www.cnblogs.com/zxiner/p/7203192.html

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

相关文章

  1. 07-call、 apply和 bind的使用

    call、 apply和 bind的使用 一、用途 call()、apply()、bind() 都是用来重定义 this 这个对象的, 二、区别 call:改变了this指向 并 让函数执行,传递参数一个个传递 apply:改变了this指向 并 让函数执行,传送参数必须是数组 bind:改变了this指向 函数不执行。 三、使用 1…...

    2024/4/22 3:01:31
  2. 版本控制

    ​ 版本控制:集中式版本控制(SVN),分布式版本控制(Git) ​ 版本控制工具的功能:协同修改、数据备份、版本管理(SVN:增量式版本控制;Git:文件系统快照)、权限控制(Git独有)、历史记录、分支管理 Git ​ Git官网:https://git-scm.com/ 本地结构 ​ 工作区——…...

    2024/4/23 4:31:03
  3. mybaties中resultMap和resultType的区别

    mybaties中resultMap和resultType的区别单表查询:resultMap:关联查询(一对一):关联查询(一对多):总结下: 今天发现平时收藏的文章太多了,所以整理下,该篇文章为转载哈。 基本映射 :(resultType)使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一…...

    2024/4/20 15:00:43
  4. 数据库字符集问题解决(Incorrect string value: ‘\xE5\xBC\xA0\xE6\x97\xA0...‘ for column ‘name‘ at row 1)

    Incorrect string value: \xE5\xBC\xA0\xE6\x97\xA0... for column name at row 1这个错误的原因就是数据库的默认编码格式为latin1,而你要将utf8的中文插入到表中。然后就将表的格式改为utf8。使用指令为:alter table stu character set utf8;但修改后发现还是不能将数据添加…...

    2024/5/8 12:55:28
  5. 36V舞台灯降压恒流驱动IC方案 PWM/模拟/RGBW调光无频闪共阳调光调色 H5119L惠海

    1.方案名称:36V舞台灯降压恒流驱动IC方案 PWM/模拟/RGBW调光无频闪共阳调光调色 H5119L 2.品牌名称:惠海半导体 3.公司介绍:东莞市惠海半导体有限公司专业从事研发、设计、生产、销售高品质、高性能、共阳极高辉度调光无频闪LED景观亮化照明、洗墙灯、舞台灯恒流调光驱动芯片…...

    2024/5/8 17:58:26
  6. fatal error C1189: #error:  Building MFC application with /MD[d] (CRT dll version) requires MFC...

    错误信息: #error 指令: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d] Gerber_Reader_ConsoleApp c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\incl…...

    2024/5/8 13:49:28
  7. 软件测试工程师面试问题总结

    1、 迭代:一周或者是两周迭代一次,版本更新,会增加新的需求,迭代一次不会进行用例的评审。一个小的需求一般10条用例 2、 Stub对桩函数:在单元测试长辈其他模块调用,在自底向上的集成过程中尤其有效 3、 测试工具: 功能自动化测试工具:QTP RFP QARun Silk 性能测试工…...

    2024/4/15 17:42:12
  8. centos设置静态ip并连接互联网

    虚拟机设置静态ip经常记不住,这里总结一下,此处针对的操作系统为centos7 其他linux可能有些命令不同vm 设置网络连接设置NAT设置网段与网关 在虚拟机->编辑->虚拟网卡设置设置本机ip 在网络连接中,找到vm8网卡,设置IP地址与子网掩码基本就可以linux设置在安装系统时有一…...

    2024/4/16 23:22:01
  9. python-Windows服务启动时,报错服务没有及时响应启动或控制请求

    C:\Users\Administrator\PycharmProjects\XianAutotest\test>python pythonservice.py start Starting service PythonService Error starting service: 服务没有及时响应启动或控制请求。解决方法:python默认安装是作为LocalSystem,配置的是用户路径而不是环境变量,所以…...

    2024/5/7 21:40:22
  10. knn的练习题---小麦种类预测

    读取seeds.tsv文件(文件已经上转到本博客下载中心,可免费下载), 最后一列是小麦品种,其他列是小麦特征 导包 import numpy as np import pandas as pd import matplotlib.pyplot as plt数据获取 seeds = pd.read_csv(./seeds.tsv,sep=\t,header=None)data = seeds.iloc[:,…...

    2024/4/25 13:11:40
  11. TypeError: ‘b\... has type str, but expected one of: bytes

    报错信息:Traceback (most recent call last):File "D:\ProgramSoftware\Anaconda3\envs\tensorflow1.0\lib\threading.py", line 914, in _bootstrap_innerself.run()File "D:\ProgramSoftware\Anaconda3\envs\tensorflow1.0\lib\threading.py", line 86…...

    2024/5/3 11:11:04
  12. Spring Data JPA 数据分页与排序

    分页 Pageable 是Spring定义的接口,用于分页参数的传递,我们看看如何使用它。首先将ArticleRepository注入到你需要进行持久层操作的类里面,通常是一个@Service注解的类,然后在服务方法内使用如下代码进行分页操作:查询第一页(从0开始)的数据,每页10条数据。 public inte…...

    2024/4/14 20:53:43
  13. libtorch学习笔记(5)- MNIST实战

    MNIST libtorch实战练习 准备工作 首先下载MNIST database,http://yann.lecun.com/exdb/mnist/ 下载后千万不要用winrar之类的软件解压,比如t10k-images-idx3-ubyte被解压成t10k-images.idx3-ubyte,最好到Linux环境下用tar解压。 假设解压到I:\MNIST。 训练并保存结果 定义网…...

    2024/5/3 3:48:27
  14. Primer C++ 学习笔记:顺序容器vector

    顺序容器类型:容器均定义为模板类,顺序容器几乎可以保存任意类型的元素,我们可以定义一个容器,其元素的类型是另一个容器vector:可变大小数组。支持快速随机访问。在尾部之外的位置插入成删除元素可能很慢deque:双端队列。支持快速随机访问。在头尾位置插入/删除速度很快…...

    2024/4/30 11:09:06
  15. Uibot Commonder视频分享

    wechat:18640903942...

    2024/4/26 22:22:27
  16. 批量删除新浪微博的博文

    如何批量删除新浪微博的博文 1.登录微博2.进入到“我的主页”3.进入调试模式4.删除博文 新手机号登录微博后发现已经被注册过僵尸号了,一怒之下准备删除全部的微博! Warning:以下操作将删除你全部的微博! 1.登录微博 通过电脑打开微博网页版,成功登录目标微博账号。2.进入…...

    2024/5/3 9:28:47
  17. 递推与递归——外星密码

    递推与递归——外星密码 题目描述 有了防护伞,并不能完全避免 2012 的灾难。地球防卫小队决定去求助外星种族的帮 助。经过很长时间的努力,小队终于收到了外星生命的回信。但是外星人发过来的却是一 串密码。只有解开密码,才能知道外星人给的准确回复。解开密码的第一道工序…...

    2024/5/2 23:22:55
  18. Navicat Premiun 连接Oracle数据库报错 28547 connection to server failed, probable Oracle Net admin error

    Navicat Premiun 连接Oracle数据库报错 28547 connection to server failed, probable Oracle Net admin error 问题原因是Navicat不能直接连接Oracle数据库,需要配置OCI环境。 解决方法 : 一、下载Oracle官方客户端,这里放一个下载链接: 下载并解压,找一个地方放置,注意…...

    2024/4/15 17:42:09
  19. HelloWorld

    HelloWorld随便新建一个文件夹,存放代码 新建一个java文件文件后缀名为.java Hello.java [注意点]系统可能没有显示文件后缀名,需要手动打开编写代码public class Hello{public static void main(String[] args){System.out.print("Hello,World!");} }编译javac ja…...

    2024/4/15 17:42:08
  20. 如何让xdebug var_dump显示完整的对象/数组

    本文翻译自:How to get xdebug var_dump to show full object/array I am using xdebug (php_xdebug-2.1.2-5.3-vc9.dll) on WAMP . 我在WAMP上使用xdebug (php_xdebug-2.1.2-5.3-vc9.dll)。 When I use var_dump on a large object or variable it does not show the full …...

    2024/4/22 16:16:29

最新文章

  1. 多角度解析动态住宅IP的多元化应用

    动态住宅IP指的是在住宅网络中使用的、能够随时间或用户需求配置的IP地址,能够根据网络状况自动调整,为用户提供更加灵活、高效的上网体验。这种IP地址不是固定不变的,而是会定期自动更换,这种IP地址也让使用者的安全得以保障。 作…...

    2024/5/9 7:50:25
  2. 梯度消失和梯度爆炸的一些处理方法

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

    2024/5/7 10:36:02
  3. PM2+Linux部署nuxt.js

    PM2Linux部署nuxt.js 开始我使用了docker部署我的springboot项目,链接在这里,因为我是前后端分离项目,前端使用的nuxt.js框架,所以需要另外部署一下项目,以下是部署流程 1.将本地的nuxt项目打包 npm run build #生成…...

    2024/5/2 14:47:51
  4. audio_video_img图片音视频异步可视化加载

    最近在做即时消息,消息类型除了文字还有音频、视频、图片展示,如果消息很多,在切换聊天框时,会有明显卡顿,后续做了懒加载,方案是只加载用户能看到的资源,看不到的先不加载; LazyAud…...

    2024/5/8 2:36:28
  5. 产品推荐 | 中科亿海微推出亿迅®A8000金融FPGA加速卡

    01、产品概述 亿迅A8000金融加速卡,是中科亿海微联合金融证券领域的战略合作伙伴北京睿智融科,将可编程逻辑芯片与金融行业深度结合,通过可编程逻辑芯片对交易行情加速解码,实现低至纳秒级的解码引擎,端到端的处理时延…...

    2024/5/9 3:34:56
  6. 416. 分割等和子集问题(动态规划)

    题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义:dp[i][j]表示当背包容量为j,用前i个物品是否正好可以将背包填满&#xff…...

    2024/5/8 19:32:33
  7. 【Java】ExcelWriter自适应宽度工具类(支持中文)

    工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...

    2024/5/9 7:40:42
  8. Spring cloud负载均衡@LoadBalanced LoadBalancerClient

    LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon,直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件,我们讨论Spring负载均衡以Spring Cloud2020之后版本为主,学习Spring Cloud LoadBalance,暂不讨论Ribbon…...

    2024/5/9 2:44:26
  9. TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案

    一、背景需求分析 在工业产业园、化工园或生产制造园区中,周界防范意义重大,对园区的安全起到重要的作用。常规的安防方式是采用人员巡查,人力投入成本大而且效率低。周界一旦被破坏或入侵,会影响园区人员和资产安全,…...

    2024/5/8 20:33:13
  10. VB.net WebBrowser网页元素抓取分析方法

    在用WebBrowser编程实现网页操作自动化时,常要分析网页Html,例如网页在加载数据时,常会显示“系统处理中,请稍候..”,我们需要在数据加载完成后才能继续下一步操作,如何抓取这个信息的网页html元素变化&…...

    2024/5/9 3:15:57
  11. 【Objective-C】Objective-C汇总

    方法定义 参考:https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...

    2024/5/9 5:40:03
  12. 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】

    👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】🌏题目描述🌏输入格…...

    2024/5/9 7:40:40
  13. 【ES6.0】- 扩展运算符(...)

    【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数&#xff0…...

    2024/5/8 20:58:56
  14. 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?

    文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕,各大品牌纷纷晒出优异的成绩单,摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称,在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁,多个平台数据都表现出极度异常…...

    2024/5/9 1:35:21
  15. Go语言常用命令详解(二)

    文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令,这些命令可以帮助您在Go开发中进行编译、测试、运行和…...

    2024/5/9 4:12:16
  16. 用欧拉路径判断图同构推出reverse合法性:1116T4

    http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b,我们在 a i a_i ai​ 和 a i 1 a_{i1} ai1​ 之间连边, b b b 同理,则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然&#xff0…...

    2024/5/9 7:40:35
  17. 【NGINX--1】基础知识

    1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息,并安装一些有助于配置官方 NGINX 软件包仓库的软件包: apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...

    2024/5/8 18:06:50
  18. Hive默认分割符、存储格式与数据压缩

    目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限(ROW FORMAT)配置标准HQL为: ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...

    2024/5/9 7:40:34
  19. 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法

    文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中,传感器和控制器产生大量周…...

    2024/5/9 1:42:21
  20. --max-old-space-size=8192报错

    vue项目运行时,如果经常运行慢,崩溃停止服务,报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中,通过JavaScript使用内存时只能使用部分内存(64位系统&…...

    2024/5/9 5:02:59
  21. 基于深度学习的恶意软件检测

    恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞,例如可以被劫持的合法软件(例如浏览器或 Web 应用程序插件)中的错误。 恶意软件渗透可能会造成灾难性的后果,包括数据被盗、勒索或网…...

    2024/5/9 4:31:45
  22. JS原型对象prototype

    让我简单的为大家介绍一下原型对象prototype吧! 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象,所以我们也称为原型对象…...

    2024/5/8 12:44:41
  23. C++中只能有一个实例的单例类

    C中只能有一个实例的单例类 前面讨论的 President 类很不错,但存在一个缺陷:无法禁止通过实例化多个对象来创建多名总统: President One, Two, Three; 由于复制构造函数是私有的,其中每个对象都是不可复制的,但您的目…...

    2024/5/8 9:51:44
  24. python django 小程序图书借阅源码

    开发工具: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html 小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索图书,轮播图&#xff0…...

    2024/5/9 6:36:49
  25. 电子学会C/C++编程等级考试2022年03月(一级)真题解析

    C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 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系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...

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

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

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

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

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

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

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

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

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

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

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

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