自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 c++实现删除日志文件(文件夹)

实现删除指令路径下的日志文件或文件夹,只保留最近的30个文件。

2023-10-27 14:30:49 436

原创 IOCP完成端口管理

WINDOWS下的异步非阻塞的模型:线程池完成高并发,共享内存完成非阻塞ctcpnet.h#ifndef CTCPNET_H#define CTCPNET_H#include <winsock2.h>#include <windows.h>#include <process.h>#include <list>#include <map>#include <iostream>#include <QDebug&

2022-04-09 16:33:11 911

原创 网络IO模型之异步事件模型

异步事件模型:像操作系统注册信息(socket、网络事件、事件),当指定网络时间按发生,将事件置为信号。特点:被动通知个数限制 64 (多线程 多数组)性能较优阻塞:自己拷贝数据如果有两个事件发生信号,只会发生索引最小的那个。#include "ctcpnet.h"#include <winsock2.h>#include <windows.h> //winsock.h#include <iostream>#include <QDebug&.

2022-04-06 16:14:45 491

原创 操作系统-线程同步

/* * 线程同步解决多线程并发的问题 * 1.原子访问:同一时刻只允许一个线程访问资源(变量) * volitale 防止编译优化,直接操作内存 * 2.临界区(关键段):同一时刻只允许一个线程访问代码段 * 用法:定义并在创建线程之初始化,进入代码区,离开代码区。 * 作用:消除重复,但是出现负值 * 出现负值的原因:票数已经卖完了,还要-- *

2022-04-06 15:43:32 1002

原创 TCP-IO模型之SELECT机制

网络IO模型之select将需要查看的套接字加入到集合中,将集合交给select管理,select在内核中查看一段时间,将发生网络事件的套接字留在集合中,校验集合。实现步骤:1.定义集合 fd_set2.清空集合 FD_ZERO()3.将socket加入到集合中FD_SET4.将集合交给select管理 select()5.校验集合 FD_ISSET()#include <QCoreApplication>#include <winsock2.h>#inclu

2022-04-04 20:46:40 1830

原创 TCP-非阻塞模型

#include <QCoreApplication>#include <winsock2.h>#include <windows.h> //winsock.h#include <iostream>#include <QDebug>using namespace std;#define MAX_PAGE 4096#define MAX_NUM 64 int m_nSocketNum=0;SOCKET m_SocketEwaite

2022-04-04 20:26:48 2082

原创 TCP单文件发送

文件传输思路Server.cpp#include <QCoreApplication>#include <winsock.h>#include <windows.h> //注意顺序 #include <winsock.h> #include <windows.h>#include <iostream>#include <QDebug>using namespace std;#pragma comment(l

2022-04-04 20:04:46 1378

原创 TCP网络传输-粘包问题解决

解决方案: 先发送包长度,再发送包大小server.cpp#include <QCoreApplication>#include <winsock.h>#include <windows.h>#include <iostream>using namespace std;#pragma comment(lib, "ws2_32.lib")DWORD WINAPI ThreadFun(LPVOID lpThreadParameter);in.

2022-04-04 19:49:52 1246

原创 操作系统线程池

.h头文件#ifndef MYTHREADPOOL_H#define MYTHREADPOOL_H#include <windows.h>#include <list>#include <queue>#include <process.h>using namespace std;/* * 线程池:预先创建一些线程,使它们处于睡眠状态,不占CPU 当来任务时,唤醒线程 * 步骤: * 1.创建一些线程 * 2.销

2022-04-03 12:57:59 326

原创 tcp 同步阻塞+多线程 模型实现多客户端与服务器通信(封装好)

服务器端.h头文件#ifndef CTCPNET_H#define CTCPNET_H#include <winsock2.h>#include <windows.h>#include <process.h>#include <list>#include <map>#include <iostream>#include <QDebug>using namespace std;class CTCPN

2022-04-03 12:54:24 924

原创 jetson nano 设置固定ip

设置固定ip/etc/network/interfaces# interfaces(5) file used by ifup(8) and ifdown(8)# Include files from /etc/network/interfaces.d:source-directory /etc/network/interfaces.dauto eth0iface eth0 inet staticaddress 192.168.1.105netmask 255.255.255.0

2022-03-17 11:06:08 881

原创 golang 在下载依赖包的时候出现错误:dial tcp 142.251.42.241:443: i/o timeout

golang 在下载依赖包的时候出现错误:dial tcp 142.251.42.241:443: i/o timeout解决:执行命令 go env -w GOPROXY=https://goproxy.cn

2021-12-22 23:14:18 10854 1

原创 mqtt授权、连接失败

安装:sudo apt-get install mosquitto sudo apt-get install mosquitto-clients问题:解决途径:sudo vim /etc/mosquitto/mosquitto.conf代码:# Place your local configuration in /etc/mosquitto/conf.d/## A full description of the configuration file is at# /usr/

2021-12-07 17:53:08 1599

原创 netstat 命令用法详解

netstat 命令用法详解apt install net-toolsnetstat -nutlp命令详解:显示所有连接。-a 选项会列出 tcp, udp 和 unix 协议下所有套接字的所有连接。使用 -t 选项列出 TCP 协议的连接,可和 -a 选项配合使用使用 -u 选项列出 UDP 协议的连接n 选项可以禁用此行为,并且用户 ID 和端口号也优先使用数字显示。-l 选项可以只列出正在监听的连接(不能和 a 选项同时使用)-p 选项可以查看进程信息(此时 netstat

2021-11-28 08:37:11 4356

原创 debian设置静态ip

debian设置静态ip

2021-11-27 18:41:14 795

原创 安装指定版本的kubeedge

1.拉取指定版本的kubeedgegit clone -b v1.7.2 https://github.com/kubeedge/kubeedge $GOPATH/src/github.com/kubeedge/kubeedge2.获取降低版本git checkout release-1.7.2

2021-11-27 18:33:02 99

原创 虚拟设备执行go脚本

虚拟设备脚本字段总结1.$hw/events/device/dht11-sensor-1/twin/update{ "event_id": "","timestamp": 0,"twin": { "temperature": {"actual":{ "value": "%s"}, "metadata": {"type": "Updated" }}, "humidity": {"actual" : { "value": "%s" },"metadata": {"type": "U

2021-11-25 10:36:00 769

原创 使用mqttfx向broker发送消息,云端获取资源

edge节点上下载sqlite3sudo apt install sqlite3连接edgecore数据库sqlite /var/lib/kubeedge/edgecore.db其他语句.exit //退出sqlite3.mode column //数据有标题select *from device //注册完设备后,查询设备select*from device_twin //发布完数据后可查询发布数据! ----- /var/lib/kubeedge/edgec.

2021-11-14 22:19:36 350

原创 raspberrypi通过mqtt协议将DHT22数据发送给broker

确保Raspberry Pi上有最新的更新sudo apt-get update安装python 3-dev和python3-pip使用这两个包来与湿度传感器进行交互sudo apt-get install python3-dev python3-pip安装最新版本的setuptools、wheel和pip python包。sudo python3 -m pip install --upgrade pip setuptools wheel 将DHT库安装到Raspberry .

2021-10-25 01:47:21 4791

原创 项目导入Go中,无法同步

原因: Go代理,禁用了很多国外代理。换成可靠的国内代理Goproxy.cn解决办法:Go 1.13 及以上(推荐)打开你的终端并执行$ go env -w GO111MODULE=on$ go env -w GOPROXY=https://goproxy.cn,direct完成。macOS 或 Linux打开你的终端并执行$ export GO111MODULE=on$ export GOPROXY=https://goproxy.cn或者$ echo "export GO1.

2021-10-24 14:21:11 129

原创 树莓派4bDHT22读Adafruit_DHT报错 can not import Beaglebone_Black_Driver的解决办法

树莓派4bDHT22读Adafruit_DHT报错 can not import Beaglebone_Black_Driver的解决办法尝试走进安装文件夹:cd usr/local/lib/python3.7/site-packages/Adafruit_DHTls编辑platform_detect.pyvim platform_detect.py在def pi_version()下面添加4B信息进来: elif match.group(1) == 'BCM2711':

2021-10-18 16:38:47 796

原创 树莓派4B raspberrypi在线安装Docker

树莓派4B raspberrypi在线安装Docker#官方脚本:会自动检测当前的系统和版本后,安装docker,只需要在联网情况下,耐心等待sudo curl -fsSL https://get.docker.com | sh#或者这样安装curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -sudo apt-get update#安装最新版本sudo apt-get install doc

2021-10-18 16:30:32 159

原创 Raspberry pi 4b 读取DHT22数据

Raspberry pi 4b 读取DHT22数据1. 确保Raspberry Pi上有最新的更新sudo apt-get update安装python 3-dev和python3-pip使用这两个包来与湿度传感器进行交互sudo apt-get install python3-dev python3-pip安装最新版本的setuptools、wheel和pip python包。sudo python3 -m pip install --upgrade pip setuptools

2021-10-18 16:25:12 446

原创 Raspberrypi 4b烧录系统-ssh远程登录-设置静态ip

Raspberrypi 4b烧录系统-ssh远程登录-设置静态ip1. 烧录Raspbian Buster系统到Micro SD卡先去官网下载树莓派官方系统,有如下三个版本:Lite版本是最小化安装,没有桌面环境;Desktop版本则带有桌面; Desktop and recommended software版本还带有推荐软件,但比较大。2. 先用SDFormatter格式化Micro SD卡。3. 然后用Win32 Disk Imager将解压出的Raspbian系统镜像文件写入Micro

2021-10-16 15:11:35 400

原创 Git命令教学

Git命令教学创建分支git branch "分支名称"git branch bugFix切换到新建的分支git checkout "分支名称"git checkout bugFix提交分支git commit合并分支git merge "想要合并的分支名称"git merge bugFix

2021-08-24 22:31:43 36

原创 kubelet操作语句

kubelet操作语句1.获取所有podkubectl get pod -A2.查看当前 Ubuntu 系统操作语句记录histroy | grep exec3.进入pod里面 管理cloudcorekubectl exec -it -n kubeedge cloudcore-aschdklchdhcod276 -- /bin/sh

2021-08-17 22:05:52 68

原创 修改docker和kubelet的cgroup-driver为systemd

修改docker和kubelet的cgroup-driver为systemddocker修改方法:cat > /etc/docker/daemon.json <<EOF{ "exec-opts": ["native.cgroupdriver=systemd"]}EOF重启docker:systemctl restart dockerkubelet修改方法:vim /var/lib/kubelet/kubeadm-flags.env添加:–cgroup-

2021-08-10 09:46:40 2061

原创 git上传文件到gitlab

git上传文件到gitlab1、安装git https://git-scm.com/downloads2、添加和配置SSH公钥:首先创建一个密钥1、桌面右键b、cd ~/.ssh/如果提示 “ No such file or directory”,你可以手动的创建一个 .ssh文件夹即可 mkdir ~/.sshc、配置全局的name和email,参照你创建的工程Git global setupgit config --global user.name "Username"g

2021-07-31 21:51:51 126

原创 Ubuntu系统中KVM/QEMU/Libvirt虚拟机设置静态IP

Ubuntu系统中KVM/QEMU/Libvirt虚拟机设置静态IP1.输入:cd /etc/network2.查看当前目录:(interfaces)输入:ls3.编辑interfaces输入:sudo nano interfaces4.添加下列语句:auto enp1s0iface enp1s0 inet staticaddress 192.168.122.204 #想要设置的ipnetmask 255.255.255.0gateway 192.168.122.15.重启网络

2021-07-18 00:03:13 1177 1

原创 mosquitto部署

@mosquitto部署mosquitto1.引入mosquitto仓库并更新$sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa$sudo apt-get update注:在Ubuntu下,如果提示这个错误的。 add-apt-repository: command not found,安装如下工具即可。 $ sudo apt-get install software-properties-common python-s

2021-07-14 15:41:44 200

空空如也

空空如也

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

TA关注的人

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