- 博客(21)
- 收藏
- 关注
原创 goland 2022 1.4、 go版本1.19中使用 os.File 关闭文件时报错 “Unresolved reference ‘Close‘“
goland Unresolved reference 'Close'
2023-01-10 23:25:22
2207
5
原创 解决 rvm 下载 出现 No fallback URL could be found, try increasing timeout with错误
报错信息:There was an error(6).Checking fallback: https://ftp.ruby-lang.org/pub/ruby/./ruby-3.1.1.tar.bz2No fallback URL could be found, try increasing timeout with:echo “export rvm_max_time_flag=20” >> ~/.rvmrcThere has been an error fetching the r
2022-04-05 19:07:27
1800
原创 前端使用 video标签 设置 autoplay 无法自动播放
如果你使用video标签又设置 autoplay 属性 还是无法播放尝试在标签上添加 muted属性function App () { return ( <> <ReactPlayer url={url} playing={true} muted={true} /> </> )}我的问题就被解决了https://www.theverge.com/2018/3/22/17150870/google-chrome-autopla
2022-03-29 18:46:29
1266
1
原创 typescript 中 使用Pick 选出多个类型
在ts中 使用pick 从定义好的类型属性中 挑选 出指定的一组属性,返回一个新的类型定义interface interfaceProps { name:string, age:number, gender:string}挑选一个类型type interfaceApp = Pick<interfaceProps,'name'>挑选多个类型type interfaceApp = Pick<interfaceProps,'name' | 'age'>. // 等同
2022-03-16 15:31:25
2682
原创 二进制和十进制互转
二进制转十进制首先要看二进制位数,使用二进制位数减一 减完后的数字就是二的几次方(最大数字)以下就用8位来举例8-1=7 那么 就要算出 2的0次方至2的7次方分别为128、64、32、16、8、4、2、1例如二进制为:01010011那么它的十进制就是所占当前位数为1的数字相加就是 64+16+2+1=83十进制转二进制...
2022-01-07 09:52:54
1895
原创 tcp如何解决拥塞控制
什么是拥塞?太多的主机以太快的速度向网络中发送太多的数据,超出网络处理能力,导致大量数据分组拥挤在中间设备中等待转发,网络性能显著下降拥塞控制:通过合理的调度、规范、调整向网络中发送数据的主机数量、发送速率、数据量、以避免拥塞或消除已发生拥塞。1、拥塞控制预防策略:预防拥塞发生流量整形技术,规范主机向网络发送数据流量2、拥塞消除策略:基于拥塞检测机制,调整主机向网络中发送数据的速率和数量,从而逐渐消除拥塞...
2021-12-13 22:53:31
1442
原创 tcp的三次握手和四次挥手
三次握手第一次握手:客户端和服务端都是close状态,服务器端首先进入端口监听模式,客户端随机开启一个端口向服务器发送一条建立连接报文,报文中含有 SYN=1,seq=x, SYN表示建立一个新的请求控制段,seq表示传输报文段的第一个数据字节,发送完成后客户端进入SYN_SENT状态,表示客户端已经发送一个连接请求段,等待回复第二次握手:服务器返回报文段SYN=1,ACK=1,seq=y,ack_seq=x+1, SYN表示同意建立新连接;ACK表示确认序号有效;seq表示服务器通知客户端 服务器的序
2021-12-13 21:14:53
212
原创 为什么tcp的建立需要3次握手
第一次握手: 客户端发送,此时服务器知道客户端能发送数据第二次握手: 服务器发送确认,此时客户知道服务器能收能发第三次握手: 客户发送确认,此时服务器知道客户能收
2021-12-13 16:39:46
430
原创 tcp报文头详解
固定首部:源端口号和目的端口号: 占16位 服用和分解上层应用数据序号: tcp序号是每个应用层数据的每个字节进行编号确认序号:期望从对方接收数据的字节序号,即该序号对应字节尚未收到 用ack_seq表示首部长度:指出tcp段的首部长度,以4字节为计算单位(4的倍数) 如果首部长度是5,则代表20字节tcp首部长度最短是20字节最长是60字节tcp首部 = 首部长度(20字节) + 选项(0字节)保留:占6位 保留为以后使用目前为0选项:长度可变 最短为0字节 最长为40字节填充:为了使.
2021-12-12 22:43:58
3186
原创 域名解析过程
递归解析:主机进行域名查询时,本地域名服务器没有被查询域名信息,本地域名服务器代理主机查询根域名服务器。根域名服务器代理本地域名服务器查询下一个域名服务,以此类推。直到得到被查询域名的ip地址,最后将解析结果发送给主机RTT计算方式 (n+1)x2...
2021-12-12 19:44:00
429
原创 TCP连接管理
tcp连接管理1:SYN连接请求2:SYNACK确认3:ACK确认三次握手建立连接首次时服务器先打开监听端口,进入监听状态,客户端打开临时端口通过这个端口发送连接请求第一次通信客户端向服务器发送一个报文(第一次握手)这个报文叫做连接请求报文中的SYN位被置为1,说明这个是同步请求,同时序列号的部分被设置一个值x的,这个x值表示客户端发给服务器的数据并所有的数据以x作为起始顺序编号,后续就是 x+1、x+2、x+3接收方按顺序接收x、x+1、x+2、x+3如果中间发现序号缺失,那么就会通
2021-12-11 22:45:51
351
原创 getBoundingClientRect的作用
Element.getBoundingClientRect()Element.getBoundingClientRect() 方法返回元素的大小及其相对于视口的位置。如果是标准盒子模型,元素的尺寸等于width/height + padding + border-width的总和。如果box-sizing: border-box,元素的的尺寸等于 width/height。...
2021-03-04 18:47:37
312
1
原创 meta标签添加Content-Security-Policy
const head = document.getElementsByTagName('head'); const meta = document.createElement('meta'); meta.httpEquiv = 'Content-Security-Policy'; meta.content = 'upgrade-insecure-requests'; head[0].appendChild(meta);
2021-03-04 14:57:08
3082
1
原创 解决element-ui的下拉框有值却无法选中的问题
<el-select v-model="listQuery.groupTag" clearable @change="$forceUpdate()"> <el-option v-for="item of groupOptional" :key="item.tag" :label="item.name" :value="item.tag" /> </el-select>@change="$forceUpdate()" 加上...
2021-02-08 17:05:06
268
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人