自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(158)
  • 资源 (2)
  • 收藏
  • 关注

原创 vscode运行C/C++时候cmd.exe界面显示

写了一些命令行传参的程序,需要终端输入参数,默认是输出结果显示在它自己的终端界面。

2024-02-15 14:46:35 536

原创 10进制、二进制、16进制的关系表

2023-12-28 20:49:13 457

原创 linux使用内核编译其中一个模块

内核有一个模块未编译,如mpt3sas,需要自己编译加载进去。这样就可以生成ko文件。

2023-12-28 16:00:27 424

原创 svn统计提交的代码行数

svn统计提交代码行数

2023-06-05 21:47:54 1260

原创 python获取文件夹下的指定文件类型

python获取文件夹下的指定文件类型

2023-05-07 10:05:43 425 1

原创 k8s里面Service中ClusterIP和NodePort的使用

介绍了常用的Service中ClusterIP和NodePort的使用

2022-06-17 10:43:29 6095 1

原创 k8s里面Deploy控制器的使用

主要介绍了Deployment控制器的创建、扩容、回退和平滑升级

2022-06-15 17:39:51 736

原创 go项目部署到腾讯云的docker上

因为我部署的是一个简单的Gin框架的web程序,所以确保腾讯云的端口是打开的,默认是不打开的,要通过腾讯云官网打开。1 部署方式一将go程序打包到腾讯云编译。1.1 创建一个工程helloDocker├── Dockerfile├── go.mod├── go.sum└── main.go1.2 创建main.gomain.gopackage mainimport ( "github.com/gin-gonic/gin")func main() { // 1.创建路由

2022-05-06 14:04:33 1016

原创 go语言日志收集系统

0、项目地址完整项目的GitHub地址https://github.com/taw19960426/learning-go-language/tree/main/go-log-collect一、日志收集系统背景1. 项目背景a. 每个系统都有日志,当系统出现问题时,需要通过日志解决问题b. 当系统机器比较少时,登陆到服务器上查看即可满足c. 当系统机器规模巨大,登陆到机器上查看几乎不现实2. 解决方案a. 把机器上的日志实时收集,统一的存储到中心系统b. 然后再对这些日志建立索引

2022-05-03 19:00:01 2146

原创 golang中通知协程退出的方式

1 需求分析go语言中通知子 goroutine 退出的三种方式方式1 通过全局变量:如果全局变量为真就退出方式2 通过通道:协程在通道里面取到true就退出方式3 通过context:通过调用ctx.Done()方法通知所有的协程退出context.WithTimeout超时退出2 通过全局变量和通道方式全局变量方式存在的问题:使用全局变量在跨包调用时不容易统一如果worker中再启动goroutine,就不太好控制了。管道方式存在的问题:使用全局变量在跨包调用时不容易

2022-04-24 12:42:56 6700

原创 go实现NSQ消息队列的集群部署

1 安装官方下载页面根据自己的平台下载并解压即可。我安装的是windows版本的2 NSQ的工作模式每个nsqd实例旨在一次处理多个数据流。这些数据流称为“topics”,一个topic具有1个或多个“channels”。每个channel都会收到topic所有消息的副本,实际上下游的服务是通过对应的channel来消费topic消息。topic和channel不是预先配置的。topic在首次使用时创建,方法是将其发布到指定topic,或者订阅指定topic上的channel。channel是

2022-04-22 21:30:47 1143

原创 go语言中的读写锁以及协程通信

0 需求分析在一个读操作远大于写操作的时候,用读写锁读写锁与互斥锁的运行时长相比两个goroutine间的通信,写goroutine写完以后通过channel发一个消息给读goroutine,读goroutine收到以后开启200个并发读两个goroutine间的通信用channel ,channel是阻塞的1 源代码package mainimport ( "fmt" "sync" "time")var ( x = 0 wg sync.Wa

2022-04-20 12:27:34 370

原创 go语言记录日志uber-go/zap/lumberjack的用法

0 需求分析日志切割能够根据文件大小、时间或间隔等来切割日志文件;支持不同的日志级别,例如 DEBUG , INFO , WARN , ERROR 等;能够打印基本信息,如调用文件、函数名和行号,日志时间等;根据时间或者天数来保存日志信息1 环境安装go get -u go.uber.org/zapgo get -v github.com/uber-go/atomicgo get -v github.com/uber-go/multierrgo get -uv github.com/n

2022-04-19 15:59:06 2579 1

原创 go-ini的用法

0 需求分析go语言读取ini的配置文件获取指定分区的对象或名称获取指定分区下的所有对象或名称自动类型转换(读取的3306直接为int类型)结构体映射,通过结构体直接访问配置文件信息参考链接:https://blog.csdn.net/Guzarish/article/details/118626693?spm=1001.2101.3001.4242.2&utm_relevant_index=4标题1 环境搭建首先,安装go-ini的安装包,默认安装到GOPATH中go g

2022-04-19 13:51:26 923

原创 go语言结构体与JSON序列化

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。JSON键值对是用来保存JS对象的一种方式,键/值对组合中的键名写在前面并用双引号""包裹,使用冒号:分隔,然后紧接着值;多个键值之间使用英文,分隔。{“Name”:“stu_0”,“Score”:1},{“Name”:“stu_1”,“Score”:11},{“Name”:“stu_2”,“Score”:21}JSON序列化的注意要点请注意结构体中的成员变量如.

2022-04-15 16:26:36 2492

原创 ngx_lua操作Redis和Mysql

功能简介通过ngx_lua对redis进行数据的插入和取出ngx_lua对mysql的增删改查浏览器以json格式返回数据将频繁调用的cjson设置全局,一开始就加载结果显示redis数据插入和取出的显示:mysql增删改查的显示:nginx.conf的配置 #设置全部变量,一开始加载 init_by_lua_block{ cjson = require "cjson"; } server { l

2022-04-12 10:07:23 504

原创 在PyPI上发布自己的python包

最近学习了一下,发布了一个自己的pypi Python包,这里我大致分享如何发布自己的Pypi包一般过程。参考文章01:https://blog.csdn.net/weixin_37543731/article/details/1011924280 需求分析我需要讲我写的myPrint()函数公布给别人用,别人下载我的xiaoTangPypi包,然后可以调用myPrint()函数1 注册 PyPI 测试账号注册地址:https://test.pypi.org/account/registe

2022-03-25 16:55:44 1658

原创 C++通过hiredis连接到redis

在Linux下通过C++代码调用hiredis的接口,实现连接

2022-03-09 10:22:47 1734 1

原创 表单验证后提交

需求(1)用户名不能为空(2)用户名必须在6-14位之间(3)用户名只能有数字和字母组成,不能含有其它符号(正则表达式)(4)密码和确认密码一致(5)统一失去焦点验证(6)错误提示信息统一在span标签中提示,并且要求字体12号,红色。(7)文本框再次获得焦点后,清空错误提示信息(8)最终表单中所有项均合法方可提交结果演示代码<!DOCTYPE html><html> <head> <meta charset="utf-8">

2022-02-14 13:48:03 677

原创 javascript解析json格式的字符串,拼接后显示到表格中

知识点解析json格式的字符串拼接的HTML设置到tbody当中加载json格式的对象结果演示html代码<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>拼接HTML</title> json格式的字符串,拼接的HTML设置到tbody当中 </head> <body> <script type=

2022-02-13 16:05:30 797

原创 Qt学习(十一):QT设置静态数据库

知识点如果数据量少的情况下,不需要连接本地mysql,自己创建一个db文件就行完整项目github地址:https://github.com/taw19960426/Qt_study/tree/main/SqlLitewidget.cpp#include "widget.h"#include "ui_widget.h"#include <QSqlDatabase>#include <QDebug>#include <QMessageBox>#incl

2022-01-20 19:42:59 2434

原创 Qt学习(十):QT连接mysql(增加、删除、遍历)

知识点Qt连接数据库数据库的插入+删除+遍历数据库的批量插入完整项目github地址:https://github.com/taw19960426/Qt_study/tree/main/DataBase结果演示问题解决连接数据库后,执行命令以后,数据库里面没有相应的结果,打印后错误是:QSqlError(“2036”, “QMYSQL3: Unable to bind value”, "Using unsupported buffer原因:之前我安装的libmysql.dll与版

2022-01-19 19:30:12 1111

原创 Qt学习(九):QT中使用线程

知识点大量的数据处理任务放到子线程里面线程创建线程回收线程处理函数内部,不允许操作图形界面子线程处理一个死循环任务,通过改变标志位,让其退出死循环子线程处理结束后,发送一个delDone信号让其主线程捕捉,触发槽函数完整项目github地址:https://github.com/taw19960426/Qt_study/tree/main/QThread结果演示线程创建流程图widget.cpp#include "widget.h"#include "ui_widget.

2022-01-16 20:48:41 935

原创 Qt学习(八):QT中TCP传输文件

知识点服务端与客户端的通信文件读写文件窗口QFileDialogQString字符串的切分section每次只发送4比特数据大小先发送文件信息,再传数据,防止TCP黏包 QTimer使用总结:出了一个非常粗心的bug:在h里面声明的变量,特别是int类型的,刚开始要进行初始化,比如sendSize += len; len是整型数据,最终sendSize是等于一个非常大的数据,我的理解是一个地址,地址+整型len,lsendSize在h文件声明了,但在cpp文件没有初始化造成的。完整项

2022-01-14 22:47:51 8767 3

原创 Qt学习(七):定时器QTimer

知识点Qt中定时器QTimer的使用完整项目github地址:https://github.com/taw19960426/Qt_study/tree/main/QTimer结果演示widget.cpp#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(th

2022-01-13 22:01:03 509

原创 Qt学习(六):UDP通信

知识点qt中UDP通信组播获取编辑器内容,发送到套接字完整项目github地址:https://github.com/taw19960426/Qt_study/tree/main/QUdpSocket结果演示widget.cpp#include "widget.h"#include "ui_widget.h"#include <QHostAddress>Widget::Widget(QWidget *parent) : QWidget(parent),

2022-01-12 16:07:32 1537

原创 Qt学习(五):TCP通信

知识点通信套接字和监听套接字获取编辑器内容,发送到套接字完整项目github地址:结果演示widget.cpp#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); //为了防止段错误 tcpServer = NULL; t

2022-01-10 18:48:17 1027

原创 Qt学习:棋盘游戏

知识点画背景图、线条qDebug()与QString联合使用 qDebug()<<QString("(%1,%2)").arg(checkX).arg(checkY);结果演示widget.h#ifndef WIDGET_H#define WIDGET_H#include <QWidget>namespace Ui {class Widget;}class Widget : public QWidget{ Q_OBJECTpubli

2022-01-04 18:03:51 1995

原创 Qt学习(四):qt读写文件

知识点QFile读写文件QFileInfo获取文件信息QDataStream读写文件QTextStream读写文件内存文件QBuffer读写文件结果演示widget.h#ifndef WIDGET_H#define WIDGET_H#include <QWidget>namespace Ui {class Widget;}class Widget : public QWidget{ Q_OBJECTpublic: explicit W

2022-01-02 15:41:03 3961

原创 Qt学习(三):事件、定时器、事件过滤器

qt里面的定时器、事件的接受和忽略、事件过滤器

2021-12-26 21:15:51 496

原创 Qt学习(二):菜单栏、工具栏和对话框

知识点窗口1:菜单栏、工具栏、核心控件和浮动窗口窗口2:模态和非模态对话框、介绍对话框、问题对话框、文件对话框结果演示main.cpp#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w.show(); return a.exec();}mai

2021-12-16 21:48:25 920

原创 Qt学习(一):两个独立窗口的信号通信

1知识点Qt两个窗口的建立、窗口的通信、处理子窗口的信号、信号的重载、Lamber表达式、自定义信号和自定义槽函数结果演示main.cpp#include "mainwindow.h"#include "subwidget.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w.show();

2021-12-14 20:53:25 2928

原创 windows10自动填充密码开机自动登陆

1 项目需求需要用到远程登陆(远程登陆需要设置用户和密码),同时客户可以开机自动进入windows系统,运行的程序开机自启动。2 步骤2.1 Win+R之后会调出运行命令框,然后在弹出的运行窗口中输入Control Userpasswords2命令,点击确定按钮。2.2 然后会弹出“用户账户”窗口。然后在弹出的“用户账户”窗口上去掉所勾选的“要使用本计算机2.3 之后再弹出的“自动登录”框内输入自己先前设置的用户名和密码,然后点击确定按钮。后面系统开机后用户会自动登陆了。..

2021-10-28 12:15:31 4170

原创 对浅拷贝和深拷贝的理解

1 浅拷贝系统提供的赋值操作,在在栈上,逐字节拷贝。1.1 代码#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>typedef struct Person { char name[50]; int age;}MyPerson;int main() { MyPerson person01 = { "小唐",24 }; My

2021-06-10 12:41:16 92

原创 877数据结构与算法分析

昆明理工大学计算机考研,自己的复习经验、去年的录取分数线以及考研大纲。一志愿过国家线也差不多可以进来。适合考昆明理工大学的877数据结构与算法分析,如果考昆工的数据结构与算法分析,也可以加入我们的QQ交流群:733804292(初试和复试都是这个)百度网盘地址:链接:https://pan.baidu.com/s/1IqPqtggDZwAuBUtGU1Vokg 提取码:yl9c 877数据结构与算法专业课包含专业:计算机系统与结构、计算机软件与理论、计算机应用技术、医疗信息技术、软件工程、计

2021-05-02 18:52:45 4077 1

原创 windows10设置开机自启动

将要执行程序的快捷方式拖入其中就可以实现开机自启动Win + Rshell:startup

2021-04-15 16:11:30 339

原创 Linux C++写日志

现在有很多成熟的日志,但用起来有点麻烦,有时候只是记录个简单的报错,自己搭建了一个,根据情况自己再调整输入的内容,当大于15KB会自动清空重写。#include <stdio.h> #include <dirent.h>#include <stdlib.h>#include <string.h>#include <time.h>#include <iostream>#include <fstream>#inc

2021-04-15 14:46:26 644

原创 批量将MP3或者m4a转为wav格式

1 准备条件需要安装ffmpeg,安装教程:[https://blog.csdn.net/liupeng19970119/article/details/110433807]2 python代码'''功能:读取指定文件夹下的所有mp3文件,转换为wav文件用法:修改path路径 filter改为".m4a",就是遍历当前目录下的m4a文件,注释掉35行的cmd_command转换其它的:最主要是用字符串拼接出cmd_command命令'''import ospath=r'F:\pyth

2021-01-12 15:56:44 5824 8

原创 python遍历目录,获取指定文件

1 需求遍历指定文件夹下的wav文件,取出后做其他处理2 代码'''功能:读取指定文件夹下的所有wav文件'''import ospath=r'E:\TWK_LanguageRecognition\CommandLineCutting\voice\复元音'filter=[".wav"] #设置过滤后的文件类型 当然可以设置多个类型def all_path(dirname): result = []#所有的文件 for maindir, subdir, file_

2021-01-06 10:16:39 370

原创 python绘制语谱图(手动实现)

1 原理分析在获取语谱图数据之前,我们需要先了解短时傅里叶变换。语音信号是典型的非平稳信号,但是由于其非平稳性由发声器官的物理运动过程而产生,这种过程是相对变换缓慢的,在10~30ms以内可以认为是平稳的。傅里叶分析时分析线性系统和平稳信号稳态特征的手段,而短时傅里叶分析,是用稳态分析方法处理非平稳信号的一种方法。假设语音波形时域信号为x(l)x(l)x(l),加窗分帧处理后得到的第nnn帧语音信号为xn(m)x_n(m)xn​(m),那有:xn(m)=w(m)x(n+m),1⩽m⩽Nx_n(m)=

2020-12-20 13:20:07 6786 9

hiredis的安装包,C语言版本,解压后,切换到解压目录,执行:sudo make && make install

hiredis的安装包,C语言版本,解压后,切换到解压目录,执行:sudo make && make install

2022-03-09

wtcsox.exe解决windows下链接库问题

由于sox在windows下使用会产生链接库的问题,比如一些能在Linux下使用的命令,在Windows下却使用不了,wtcsox.exe是我们自己又编译后的sox工具

2020-11-25

空空如也

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

TA关注的人

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