自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 收藏
  • 关注

原创 python多线程i++没有出现问题

【代码】python多线程i++没有出现问题。

2025-02-03 23:33:12 117

原创 记一实验:原始套接字占用已经连接的端口号

当本机的某个端口A已经和另一个电脑的某个端口B建立了tcp连接,如果使用原始套接字用该端口A发送一个SYN, 对方端口返回了SYN-ACK, 本机操作系统的协议栈会认为错误,然后发送RST。

2025-02-02 17:52:24 85

原创 2.5K的屏幕看1080P视频模糊问题

博主买了一台笔记本电脑,小新pro16 2023,CPU的型号是AMD Ryzen 7 7840HS with Radeon 780M Graphics。2.其实主要原因的因为显卡驱动,在AMD官网下载windows驱动,进入该软件后自动识别驱动,给出升级,升级后就解决了问题。但是打开B站发现看1080P的视频很模糊,有2个方法。

2024-12-30 16:01:40 570

原创 script代码是何时执行的

我认为从前向后执行,执行完成所有再绘制页面,如果script放在div后面,则script代码就知道DOM, 否则不知道(代码3示例)// 调用函数,阻塞3秒。// 调用函数,阻塞3秒。

2024-12-23 14:28:54 355

原创 pycharm的2句话:Add content roots to PYTHONPATH Add source roots to PYTHONPATH理解ModuleNotFoundError

如果是通过终端运行:我的t6.py文件是在E:\PyProjects\nmap_local\test目录下。发现少了E:\PyProjects\nmap_local这路径,其实这个才是我的项目根路径,我的项目目录下有util目录,如果我在t6.py文件中import util会报错。但是点击pycharm的运行按钮就可以!

2024-12-18 21:46:21 284

原创 typora让代码行能够隐藏(超出显示范围不换行)

在文件中加上代码,为什么加上!important呢,因为CSS的优先级原因。打开主题文件夹,选择对应主题的CSS文件。

2024-12-08 21:26:48 348

原创 tcp连接设置一个超时时间(没在操作系统层面设置)

await asyncio.open_connection(ip, port, limit=1024)代码是使用了操作系统的TCP连接,正常TCP连接的时候会有重试机制,当第一个SYN没有回复的时候,会再重试4次,每次间隔1s, 2s,4s, 8s,我觉得太慢了,我想就重试2次。tcp_retries1:设置第一次重试前的重试次数(默认值是 3 次)。tcp_retries2:设置最大重试次数(默认值是 15 次)。调整操作系统的 TCP 重传参数。以下回答是GPT给出的。

2024-12-07 22:49:37 768

原创 TCP连接的时候遇到的异常(目标端口没开放)

*1. 发送第一个SYN后没收到回复,隔时间 1s , 2s , 4s, 8s 重新发送4个SYN, 如果都失败,结束 **运行这段代码后,有2种情况【我在windows 11电脑尝试的】可能原因:主机的端口被防火墙屏蔽(这个时候开不开该端口都一样)可能原因:主机的端口没被防火墙屏蔽,但是上面没有运行任何服务。

2024-12-07 21:55:14 407

原创 djikstra算法模板

堆+邻接表 P3371 【模板】单源最短路径(弱化版)

2024-11-06 21:12:08 297

原创 算法时间复杂度和真实时间测算

2^N=1000000000, N 约等于 29.90 , 29还行,30,31,32都不行。一维度循环 1后面9个0。

2024-11-06 19:50:10 170

原创 记录java输入相关的实验,验证hasNext、hasNextLine、next和nextLine

第二行输入12然后输入几个空格然后再按下enter。第一行输入几个空格然后enter。

2024-10-28 22:37:50 113

原创 java中Scanner的nextLine和next方法

在读取过程中,如果输入中包含多个单词,它只会读取第一个单词,后面的内容会留在输入流中供后续方法使用。读取一个单词,即从输入流中读取第一个空白符之前的字符,空白符可以是空格、Tab、回车等。用于读取包含空格的整行文本,比如用户输入一句话时,它会将整句话读取出来。读取整行字符串,即从当前光标位置读取到回车符之前的所有字符。我的猜想是前面1,2,3,4解析完成后确实剩下“ 5”读取到换行符结束,并将该行的数据(包括空格)完整返回。思考,输入1 2 3 4 5加上enter,输出什么。

2024-10-28 21:22:01 704

原创 python异步协程动态调整协程数量

【代码】python异步协程动态调整协程数量。

2024-10-15 19:23:28 183

原创 leetcode 1027 最长等差数列 题目的思考

对于第三个数,它的序列长度应该是【0,3】长度为2,第一个数也是3。对于第一个数3,它的序列长度就是他自己3。对于第二个数0,它的序列长度就行它自己0。如果序列是:3 0 3,枚举的公差是3。

2024-10-13 22:00:48 378

原创 mysql查询2张表连接列名一样的情况

查询的结果id(1)和name(1)说明列名重复。重复的列名起一个别名。

2024-10-13 13:14:58 421

原创 单个电梯调度,在终端输入指令,电梯会模拟运行

【代码】单个电梯调度,在终端输入指令,电梯会模拟运行。

2024-10-12 21:49:11 285

原创 docker启动的rabbitmq如何启动其SSL功能

在容器的/etc/rabbitmq/rabbitmq.conf文件中写下面的内容(如果没有该文件就自己创建一个),最好的方法是在宿主机创建一个rabbitmq.conf写好下面的内容,然后复制到容器的/etc/rabbitmq/rabbitmq.conf。使用docker的复制命令将ca.crt、server.crt和server.key文件复制到容器的/etc/server_ssl目录下(其实复制到哪都行,就是后面配置文件写的对应的文件路径)

2024-10-12 21:45:55 579

原创 为何四次挥手要等待2MSL

因为A并不知道它发送出去的ACK要多久对方才能收到,所以A至少要维持MSL时长的TIME_WAIT状态才能保证它的ACK从网络中消失。所以晃眼一看,A只需要等待1个MSL就够了,但仔细想一下其实1个MSL是不行的,因为在B收到ACK前的一刹那,B可能因为没收到ACK而重传了一个FIN报文,这个FIN报文要从网络中消失最多还需要一个MSL时长,所以A还需要多等一个MSL。参考文章:https://zhuanlan.zhihu.com/p/204988465。A主动关闭连接一方,B是被动关闭一方。

2024-10-10 12:58:04 212

原创 最长递增子序列的nlogn解法

看到文章中 https://blog.csdn.net/evildoerxmf/article/details/134266237。计算dp[5]的时候要考虑前5个数dp[0~4], 最后dp[5] = dp[1] + 1 = dp[0] + 1 = 2。当nums[i]d[len]时,将nums[i]加入d数组;dp[]值为1的数是2。dp[]值为2的数是5。dp[]值为3的数是7。

2024-10-10 11:06:00 227

原创 python引用计数

(2) dfs函数 step = 2函数中的x形参。(3) dfs函数 step = 1函数中的x形参。(4) dfs函数 step = 0函数中的x形参。(5) getrefcount函数函数中的x形参。py 3.11解释器输出对象a:5。

2024-10-03 01:08:20 336

原创 python重写list迭代器,在修改list的过程中不影响迭代

生成迭代器快照,在底层用深拷贝又拷贝了一份list对象。

2024-09-15 17:47:21 276 1

原创 python深拷贝和浅拷贝的实验

浅拷贝会创建一个新对象,然后将原始对象中的所有引用复制到新对象中。这意味着,如果原始对象包含的是不可变类型(如整数、字符串、元组)的属性,那么浅拷贝将复制这些不可变类型的数据;但如果原始对象包含的是可变类型(如列表、字典、集合)的属性,那么浅拷贝将只复制这些可变类型的引用,而不是它们的内容。深拷贝会创建一个新对象,然后递归地复制原始对象中的所有子对象。这意味着,无论原始对象包含的是不可变类型还是可变类型的属性,深拷贝都会复制它们的内容,而不是引用。深拷贝(Deep Copy): 复制对象及其所有子对象。

2024-09-15 17:28:00 407

原创 LVS的加权轮询算法

权值较高的服务器比权值较低的服务器首先接收到新连接,权值较高的服务器比权值较低的服务器获得更多连接,权值相等的服务器获得相同的连接。一开始等于cw=0,最大公约数是1,cw减去最大公约数后是-1,cw被置为服务器中最大的权重4。cw减去最大公约数后是0,重新开始,cw被置为服务器中最大的权重4。cw相当于一个标杆,通过不断的降低标杆让权重小的服务器能被调度。第二轮cw减去最大公约数后是3,cw>=3的有。第三轮cw减去最大公约数后是2,cw>=2的有。第四轮cw减去最大公约数后是1,cw>=1的有。

2024-08-31 15:48:44 520

原创 vrrp协议,主备路由器的选举

这个过程确保了即使在所有备份路由器优先级相同的情况下,也能迅速且有效地选举出一个新的主路由器,从而保持网络的连续性和可靠性。需要注意的是,VRRP版本2允许通过配置认证来防止未经授权的路由器参与选举过程,这增加了选举过程的安全性。新的主路由器在选举完成后会主动发送ARP通告(ARP Gratuitous Message),以更新网络中设备的ARP缓存,从而通知设备新的主路由器的MAC地址与虚拟IP地址之间的映射关系。对于192.168.85.131和192.168.85.132配置是。

2024-08-29 11:32:01 1871

原创 linux的int80汇编代码举例

int 0x80 指令会触发一个软件中断,CPU 会根据中断向量号查找中断描述符表(IDT)中的对应条目,并跳转到相应的中断处理程序。int 0x80 是 x86 架构中的一条软件中断指令,它用于触发一个软中断(software interrupt),并且它是执行系统调用的主要机制之一。当执行 int 0x80 时,CPU 会保存当前的执行状态(程序计数器等),然后跳转到中断处理程序的地址。操作系统内核会处理这个系统调用,执行所请求的操作,然后将控制权返回给用户空间程序,并恢复之前的执行状态。

2024-08-17 21:30:42 428

原创 netsh int tcp show global查看TCP参数

enabled: 表示启用HyStart算法,这是一个用于改进TCP连接启动阶段的算法,可以更快地达到网络的最佳吞吐量。enabled: 表示接收段合并功能被激活,这可以减少传送到上层应用程序的中断次数,提高网络处理效率。enabled: 表示TCP快速打开功能被激活,这可以在某些情况下减少TCP连接建立的延迟。enabled: 表示在遇到网络拥塞时,TCP拥塞窗口会按照一定比例减少,而不是固定减少。enabled: 表示如果对端不支持TCP快速打开,将回退到正常的TCP连接建立过程。

2024-08-15 20:18:09 1347

原创 如果一个进程里面某个线程发生崩溃,会对进程产生什么影响?

进程的其他线程可以继续运行,但进程的功能可能会受到影响,尤其是如果挂掉的线程是关键任务线程。当 Linux 中一个进程的线程挂掉(崩溃或终止)时,进程的整体状态可能会受到影响,具体情况取决于线程的数量和类型,以及该线程执行的任务。总的来说,当一个线程挂掉时,虽然进程未必会立即终止,但其功能或性能可能会受到影响,具体取决于该线程的重要性和系统的异常处理机制。单线程进程:如果该进程只有一个线程,那么线程挂掉就意味着进程挂掉,整个进程将终止,状态会变为“已终止”或“僵尸”状态。

2024-08-15 00:05:54 735

原创 升序序列,求某个数字的个数,这个数字可能有多个

二分法求【找到数组中小于x且序号最大的】【找到数组中大于x且序号最小】

2024-08-14 13:57:03 144

原创 epoll 的边缘触发(Edge Triggered,ET)和水平触发(Level Triggered,LT)

水平触发(LT) 更加简单直观,但会在可读/可写状态持续存在时重复通知应用程序。边缘触发(ET) 更高效,但要求应用程序处理所有数据,避免数据遗漏。LT 适合大部分场景,而 ET 适合高性能应用,但需要更加细致的处理逻辑。

2024-08-13 20:42:32 390

原创 c语言使用select进行IO多路复用

红黑树:用于存储和快速查找所有注册的文件描述符。每次select调用前都要进行初始化【重新设置要监听的位置】,内核态会把数据拷贝回来会覆盖(用户态拷贝到内核态,内核态拷贝到用户态)epoll_create:创建一个 epoll 实例,返回一个 epoll 文件描述符,用于管理后续的 epoll 操作。但是依然存在用户态、内核态相互拷贝的问题,内核态会修改revents拷贝回用户态,在用户态需要改成0(重新初始化)epoll_wait:等待注册的文件描述符上发生的事件,返回发生事件的文件描述符列表。

2024-08-13 20:19:03 326

原创 python代码模拟服务器实验2:IO多路复用select

而不是文件描述符。在Unix-like系统上,文件描述符是一个整数,而在Windows上,select期望得到的是socket对象本身,而不是它们的文件描述符。实验代码的环境是在windows,和linux是有差别的。在Windows系统上,select模块需要传递特定的。客户端代码参考实验1。

2024-08-13 10:50:20 307

原创 python代码模拟服务器实验1:阻塞IO

例如,常见的值有 5、10 或者更高,这样可以确保服务器能处理更多并发的连接请求而不容易拒绝新的连接。总结:server_socket.listen(1) 中的 1 是连接请求队列的最大长度,决定了在服务器处理当前连接时,可以有多少其他连接请求被挂起等待处理。如果在这个时候有第三个客户端请求连接,由于队列长度已经达到 1,第三个请求可能会被拒绝,或者客户端会收到 ECONNREFUSED 错误。如果服务器正忙于处理当前连接,而另一个连接请求到来,那么这个新的连接请求将被放入队列中。

2024-08-13 00:06:39 209

原创 left join的一次实验:on后面加筛选条件和where加筛选条件

c1表c2表查询语句是。

2024-08-12 11:28:18 275

原创 理解arp_ignore配置

mac

2024-08-11 22:15:56 199

原创 交换机接口的mac地址

mac

2024-08-11 20:47:02 1166

原创 Ubuntu Linux, 如何查找当前DHCP服务器的ip地址

执行命令sudo dhclient。

2024-08-10 19:43:15 357

原创 HCL实验2:VLAN

目的:让PC_3和PC_5处于vlan1, PC_4和PC_6处于vlan2。效果:处于同一vlan的才能ping成功。

2024-07-31 23:20:06 435

原创 HCL实验1:两台PC通过交换机ping通

在PC_2的主机上ping PC_3的ip。2台PC机器的Ip地址必须在同一子网。PC_2的ip地址和子网掩码配置如下。PC_3的ip地址和子网掩码配置如下。

2024-07-31 22:42:49 709 3

原创 HCL模拟器启动失败的解决办法

使用administrator再powershell中执行以下命令。开启 hyper-v。

2024-07-31 21:36:26 1226 1

原创 win家庭版添加hyper-v

将内容复制到空的txt文件中,后缀改为cmd,双击运行。

2024-07-30 17:32:30 195

keil arm主题美化

keil arm主题美化,主题类似于one dark

2023-02-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除