git回滚!!!线上遇到问题紧急救援
一、打开Git Bash Here输入git reflog
12345678910111213//输入命令git reflog//得到以下历史提交记录4d3221f (HEAD -> dev, origin/dev) HEAD@{13}: commit: 拓扑图配色优化fa646fe HEAD@{14}: commit: 角色管理站点权限不可编辑bug修改60b35d4 HEAD@{15}: commit: 拓扑图相关修改93173e7a HEAD@{16}: commit: 拓扑图相关修改8d51db77 HEAD@{17}: commit: 拓扑图相关修改86268ede HEAD@{18}: commit: 拓扑图相关修改7b1a4279 HEAD@{19}: commit: 拓扑图相关修改6c247098 HEAD@{20}: commit: 拓扑图相关修改52f9a010 HEAD@{21}: ...
Git:解决报错:fatal The remote end hung up unexpectedly
问题描述:Git在推送项目时报错:fatal: The remote end hung up unexpectedly。
问题原因:推送的文件太大。
解决方法:
1.修改设置git config文件的postBuffer的大小。(设置为500MB)1$ git config --local http.postBuffer 524288000
注:–local选项指定这个设置只对当前仓库生效。
fastapi ResponseModel
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768from pydantic import BaseModelclass ResponseModel(BaseModel): code: int = 200 msg: str = "" success: bool = True data: dict = Noneclass TaskResponseModel(ResponseModel): data: dict = { "code": 200, "msg": "", "success": True, "data": { "id" ...
安装conda后取消命令行前出现的base,取消每次启动自动激活conda的基础环境
安装conda后取消命令行前出现的base,取消每次启动自动激活conda的基础环境
方法一每次在命令行通过conda deactivate退出base环境回到系统自带的环境
方法二1,通过将auto_activate_base参数设置为false实现:
1conda config --set auto_activate_base false
2,那要进入的话通过conda activate base
3,如果反悔了还是希望base一直留着的话通过来恢复
1conda config --set auto_activate_base true
在一个进程中通过队列的方式缓存opencv视频帧,并在另一个进程中读取
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697import _threadimport queueimport timeimport cv2from flask import Flask, Responseapp = Flask(__name__)max_size = 3q1 = queue.Queue(maxsize=max_size)q2 = queue.Queue(maxsize=max_size)open_flag = 1def open_and_show(ip_camera_url, title): global open_flag cap = cv2.VideoCapture(ip_camera_url) while open_flag ...
在python中将opencv读取到的视频数据发布为ros话题,并在ros中能够通过rqt显示出来
12345678910111213141516171819202122232425262728293031323334import cv2import rospyfrom sensor_msgs.msg import Imagefrom cv_bridge import CvBridge, CvBridgeError# Initialize ROS noderospy.init_node('video_publisher', anonymous=True)# Create a publisher for the video streamvideo_pub = rospy.Publisher('video_stream', Image, queue_size=10)# Initialize OpenCV video capturecap = cv2.VideoCapture('rtsp://admin:qwer1234!.@192.168.1.67:554')# Initialize CvBridge for image con ...
超级详细的Lua语言的基础教程
https://blog.csdn.net/qq_43594278/article/details/116018869
python asyncio
例子1234567import asyncioasync def main(): print("hello") await asyncio.sleep(1) print("world")asyncio.run(main())
主要函数task = asyncio.create_tas()res = await asyncio.gather(task1, task2) # res: list
获取返回值res = await task
yazi框架学习笔记
主线程
监听和建立客户端的连接
接收客户端的请求数据,创建一个任务,该任务携带请求数据,并把该任务放入任务队列
告诉分发线程,有请求任务过来了,叫他赶紧去处理
重复上面三个步骤
注意:主线程不处理具体请求
分发线程
查看任务队列,看是否有请求任务?没有任务则继续睡觉,否则把任务取出来,然后分发给线程池
线程池有空闲的线程,则把该任务交给空闲的线程处理,否则该任务乖乖待在队列里等待,直到有空闲的线程为止
重复上面两个步骤
注意:分发线程也不处理具体请求
工作线程
执行任务
销毁任务
重复以上两个步骤
注意:工作线程处理具体请求
select、poll、epoll, 图解
io多路复用 核心代码 & 图解 (select 模型)
Select模型该模型的图解大致如下
Select模型存在以下缺点:
默认情况下,fdset只有1024个bit位,也就是说只能1024个连接。
每次select函数调用后,都需要检测所有文件描述符。
每次select函数调用时,内核都需要进行拷贝文件描述符集合。
参描较多,较难理解。
Poll模型Poll模型与select模型的运行规则基本一致。
该模型的图解大致如下
Poll模型相比select模型,有以下优点:
将文件描述符交给结构体数组进行记录和管理,可连接数量可自定义,并且大大增加。
参数相对更简单易懂。
epoll模型epoll是典型的用于高效地处理大量并发连接的模型
该模型的图解大致如下
epoll模型相比select、poll模型,有以下优点:
支持边缘触发。当recv函数一次性无法读取全部数据的时候,可以在下次循环中继续读取数据,有效地避免粘包等问题。
使用红黑树管理文件描述符和对应事件。在连接数巨大的时候,epoll的红黑树数据结构可以快速地实现节点的改查。包括相应事件发生的时候,内 ...