自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HuaShao

技术、新闻、八卦、应有尽有

  • 博客(492)
  • 资源 (26)
  • 问答 (2)
  • 收藏
  • 关注

原创 手把手教你配置vscode的c++开发环境(wsl + 远程)

一定记得在linux安装gcc/g++开发环境一定记得在linux安装gdb调试工具,有些默认没有安装,即使正确配置了launch.json和task.json,也会报错。。。

2022-11-05 12:03:23 2563

原创 netstat 命令详解

netstat命令是常见的查看网络信息的命令,主要包括网络连接的信息、路由表的信息、网卡的信息和广播的信息等;本次不会讲解如何使用netstat命令,详细的使用方法请参见:man netstat本次主要聊一聊网络连接的信息,当使用netstat -anop命令时,输出如下:那么,这些信息主要是什么意思呢?待我一一道来。Proto协议的类型,主要有tcp、tcp6、udp、unix、udplite、raw、sctp等,当然可以通过传相应的协议类型给netstat命令而仅仅显示某种类型的协议,如:

2022-03-01 14:25:08 6131 3

原创 Enter passphase for key, 避免频繁的输入被密码保护的ssh key

启动agent eval `ssh-agent -s`添加id_rsassh-add ~/.ssh/id_rsa输入密码,在不重启电脑之前,可以不用频繁的输入密码了。

2022-02-23 14:11:43 3794

原创 systemctl systemd.service

Namesystemd.service — Service unit configurationSynopsisservice.serviceDescriptionA unit configuration file whose name ends in ".service" encodes information about a process controlled and supervised by systemd.This man page lists the configu

2021-12-15 12:29:48 286

原创 编写使用systemctl管理的service服务

上文介绍了systemctl命令是基于Systemd系统的,本文主要简单的介绍一下如何编写一个可以使用systemctl命令管理的后台进程(daemon进程),使用systemctl命令管理进程(服务)主要有以下好处:1、可以方便的查看进程的状态2、可以方便的启动、停止、重启、reload进程3、可以方便的配置进程是否随系统启动而启动,并且可以配置复杂的依赖关系(如:在某个服务启动后启动)4、可以方便的指定以某个用户的身份启动等等。service文件一般分为三个部分:Unit用来定义 Uni

2021-12-14 23:16:18 1864

原创 Systemd and sysemctl

系统结构Systemd 的设计目标是为系统的启动和管理提供一套完整的解决方案,具体的结构如上图所示。Systtemd不是一个命令,而是一组命令,这组命令涉及系统管理的多个方面。Systemd的相关命令systemctl#查看版本$ sudo systemctl --version# 重启系统$ sudo systemctl reboot# 关闭系统,切断电源$ sudo systemctl poweroff# CPU停止工作$ sudo systemctl halt# 暂停

2021-12-14 21:03:13 1372

原创 实战探究!C++ 20 标准都发布了哪些重要特性?

目前gcc 10.2可以支持部分C++20标准,编译的时候需要使用编译选项:-std=c++2a待我升级编译器之后分章节详解主要特性的概念、示例。敬请各位关注,干货马上到来Constraints and concepts (约束和概念)在类模板和函数模板编程中,主要用于对模板参数的结束和限制,这种约束和限制发生在编译期,编译错误不在那么晦涩难懂了。在模板编程中,可以限制模板参数的类型或具用某种特性,如:可以限制为整型、数值型、bool型、或必须支持hash特性、或某个类的派生类型等。在C++2

2020-12-23 09:28:13 9216 32

原创 常见的拖垮中小公司技术团队的10宗罪

某人曾说过,“What does not kill me,makes me stronger.”根据周围公司的情况,总结了拖垮中小公司技术团队的主要因素,当然,你也可以使用下面的手段,把你现在的公司拖垮(与本人无关),正所谓术高莫用,年轻人,耗子尾汁:1、外行管内行大部分公司,老板本身不懂技术,有些老板略懂业务,更多的老板是更懂市场,老板找一个会包装自己但没有做过开发的人来管理技术团队,那位说老板不傻,只能说在他懂的范围内不傻,在他不懂的范围内很多老板看不透彻,让一个没有写过一天代码的人管团队会出现什

2020-12-16 18:13:44 12940 43

原创 tmux常用命令及快捷键

tmux常用命令及快捷键 Ctrl+b(我改成了Ctrl+a) 激活控制台;此时以下按键生效 系统操作 ? 列出所有快捷键;按q返回 d 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 D 选择要脱离的会话;在同时开启了多个会话时使用 Ctrl+z 挂起当前会话 r 强制重绘未脱离的会话 s .

2020-11-19 10:20:05 2329

原创 手把手教你配置linux下C++开发工具——vim+ycm(YouCompleteMe),支持基于语义的自动补全和第三方库补全(史上最简单、史上最透彻、史上最全的终极解决方案)

截止到目前,vim稳定版本已经到了8.2+,ycm(YouCompleteMe的简称)最新版本与几年前的安装配置截然不同了。之前网上很多教程也教不得法,生搬硬套,没有讲透彻。所以,才下定决心写一篇自认为史上最简单、史上最全的教程出来。一、准备工作 1、安装python(ycm需要使用python3.6以上的版本,这里选择python3.8.5): 1.1、进入download目录:cd download 1....

2020-10-23 12:57:01 11796 31

原创 没有core文件时定位segfault at 0 ip 的问题(一)

C/C++编写的程序,崩溃后有时不能生成core文件(即使设置了ulimited),所以往往不知道发生了什么事情,生产环境根本不允许研发小朋友去调试,日志有时候看不出问题了。(如果生成了core文件,或通过日志能定位到问题所以,则可略过此文章)。本文章专门针对于没有生成core文件、不能通过日志分析问题的情况首先,写一段测试代码吧,不用怀疑,这段代码肯定是有问题的#include <iostream>#include <cstdio>#include <mem

2020-07-28 18:18:51 3855 1

原创 从U盘安装centos7(史上最简单的终极解决方案)

1、下载最新版本的centos(目前是centos 7.6) https://www.centos.org/download/ 由于我是安装服务器,所以选择了Minimal ISO(只有900多MB)2、制作Centos安装盘(准备一个空白的1GB以上的U盘) 2.1.安装UltraISO 2.2.安装完成后点...

2019-03-10 17:48:46 211023 156

原创 Python3 list 排序函数详解

Python3 list 排序函数详解一、列表的sort排序函数函数原型: list.sort(key=None,reverse=False)函数功能:对原列表进行排序,完成排序后,原列表变为有序列表。默认情况(不传入任何参数时)按字典顺序排序。函数参数:(1)key: 主要是用来进行比较的元素,只有一个参数,具体的函数的...

2018-05-28 18:55:03 39429 7

原创 git reset和git revert的区别

(即:把增加的删除、把删除的加回来,做一次commit的逆运算), git revert commit_id成功之后,会生产一次新的提交,并且commit_id的影响将不会存在于git revert之后的commit,但是在git revert之前的commit中还是能看得到commit_id的改动的(有点乱,。操作是将选择的某一次提交记录 重做,若之后又有提交,提交记录还存在,只是将指定提交的代码给清除掉。是将之前的提交记录全部抹去,将 HEAD 指向自己重置的提交记录,对应的提交记录都不复存在;

2023-05-05 15:27:53 387 1

原创 批量编译py为pyc,并删除py文件

【代码】批量编译py为pyc,并删除py文件。

2023-04-21 11:30:39 70

原创 Http响应状态码大全(看完这篇文章估计你会对HTTP状态码有更深入的了解)

当你的应用程序代码或服务器中的某些部分出现问题时,它将自动返回这些状态代码之一。具有这些状态码的响应可能有或者可能没有响应体,但 304「未修改」是个例外,该响应不得含有响应体。一个特殊的例子是 204,「无内容」。此响应在没有内容返回给客户端时使用,因此该响应不能包含响应体。及以上状态码用于「消息」响应。具有这些状态代码的响应不能带有响应体。及以上状态码用于「客户端错误」响应。这些状态码有一个识别它们的关联名称,但是重要的还是数字。及以上状态码用于「成功」响应。一个例子是 404,用于「未找到」响应。

2023-04-19 14:18:15 386

原创 systemctl 用法大全

【代码】systemctl 用法大全。

2023-04-13 12:54:12 32

原创 linux下安装mariadb和配置全攻略

然后输入密码就可以以admin用户登录到数据库了。#创建admin账户。

2023-04-01 19:24:27 146

原创 让普通用户执行systemctl命令

在/etc/sudoers.d/ 目录下新建一个名为test的文件,保存后,即可用test用户执行sudo systemctl命令了。前提:配置好了nginx.service,建议使用。普通用户名: test。

2023-03-31 11:09:24 337

原创 uvicorn 使用指南

uvicorn使用指南、命令行参数;什么是uvicornnginx与uvicornpython fastapi

2023-03-03 14:59:45 674

原创 FastAPI简单示例

fastapi简单示例

2023-03-02 10:55:21 135

原创 投资百科网址......

https://www.investopedia.com/

2023-02-28 19:19:00 73

原创 C++23主要特性

c++23主要特性

2023-02-16 17:18:00 224

原创 #直播预告 “C++王者归来”系列大咖对谈,带你了解新时代的C++编程语言。2月16、18日19点两场重磅直播欢迎 #视频号:IT阅读排行榜 观看

#直播预告 “C++王者归来”系列大咖对谈,带你了解新时代的C++编程语言。2月16、18日19点两场重磅直播欢迎 #视频号:IT阅读排行榜 观看

2023-02-16 09:13:07 100

原创 c++连接mariadb/mysql 数据代码

【代码】c++连接mariadb/mysql 数据代码。

2023-02-13 21:26:54 82

原创 How to install MariaDB Connector/C++ on linux

从源码安装mariadb connector/c++

2023-02-08 00:06:30 121

原创 Linux 防火墙常用命令

The firewall-cmd command enables you to configure firewalld by querying, adding, modifying, and deleting zones and services as desired. Because firewalld is the default firewall service for many Linux distributions, including Red Hat Enterprise Linux and C

2023-02-02 23:55:59 2902

原创 How to install MariaDB Connector/C on linux

【代码】How to install MariaDB Connector/C on linux。

2023-01-31 15:27:00 141

原创 Python连接mariadb

【代码】Python连接mariadb。

2023-01-19 15:30:40 69

原创 WebSocket 协议

【代码】WebSocket 协议。

2023-01-04 17:14:53 963

原创 简单的有限状态机(FSM)示例二(订阅多个事件,同一个状态可以转换为多个不同的状态)

由此可以,实现了比上次稍微复杂一点的状态机:同一个状态可以向多个不同的状态进行转换。为了保持与前续的一致,所以我们这里依然基于boost的状态机来实现。

2022-12-27 11:49:09 186

原创 简单的有限状态机(FSM)的示例一

使用if-else或switch-case判断并设置状态之间的转换,比较小儿科,如果写不好会有很多很多的bug,最后当状态变得很多很复杂的时候,bug可能不好找完,尤其是在加入新的状态以后.有一个明显的优点:就是想怎么改就怎么改,容易上手。有一个明显的缺点:很难扩展新的状态,增加新的事件。

2022-12-09 17:45:37 410 2

原创 修改tmux的快捷键C-b

tmux

2022-12-04 20:50:00 398

原创 微软的搜索也太有意思了!!!当你搜索下载chrome的时候,竟然提示这样的信息。。。。。。

......

2022-11-05 12:44:31 180

原创 手把手教你配置vscode+wsl开发环境

【代码】手把手教你配置vscode+wsl开发环境。

2022-11-05 11:13:57 1544

原创 如何删除windows的WSL

WSL可以从microsoft appstore安装,但是却不能从appstore卸载,也是醉了,那么,这种小问题能难住我们吗?当然不能了。

2022-11-05 10:57:15 9993 3

原创 什么是订单?

An order consists of instructions to a broker or brokerage firm to purchase or sell a security on an investor’s behalf. An order is the fundamental trading unit of a securities market. Orders are typically placed over the phone or online through a trading

2022-11-01 17:33:22 127

原创 一个好用的double-convertion和bignum库

https://github.com/google/double-conversion

2022-11-01 10:44:02 126

原创 Happy 1024

Happy programmer’s day

2022-10-24 22:51:24 75

原创 linux平台下一个好用的并行压缩工具(cpu核数越多越快,比tar -j可以快很多倍)

linux平台一下一个好用的、快速的大文件并行压缩工具

2022-09-30 12:53:47 1006

django.pdf

Django Documentation Release 3.1.6.dev

2021-02-18

2020CPP-Summit.rar

2020全球C++及系统软件技术大会PPT合集,包含了C++之父、世界各地开发人员及老们的所有PPT,如:著名的潘爱民老师、陈峰老师、吴咏炜老师等; 考虑到有的同学下载比较慢,所以拆分了多个资源。

2021-01-21

gcc10源码及依赖库第三部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

gcc10源码及依赖库第二部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

gcc10源码及依赖库第一部分(下载完成第一、二、三部分后,解压即可编译)

包含了gcc10的最新的源码(10.2.0)及依赖库,下载后可以直接编译、安装。一定要下载完三部分才可以解压,然后进行构建 : 详细的构建过程请参见:blog.csdn.net/lianshaohua/article/details/112599062

2021-01-20

xpub_xsub.rar

基于zmqpp接口实现的ZMQ_XSUB、ZMQ_XPUB模式,xpub端发布消息,xsub端订阅消息(xsub通过send接口订阅topic,这一点与sub不同)

2020-11-05

正三角形代码.rar

用python的几行代码实现在控制台输出一个正三角形,比较简单的一个习题,但是对于思考还是很有帮助的

2020-11-04

client_server.rar

基于zmqpp实现的ZMQ_CLIENT和ZMQ_SERVER模式,可编译直接运行,即可见到效果,client和server模式目前还在DRAFT阶段,稳定后会在正式版本支持的。

2020-11-04

pub_sub.rar

基于zmqpp实现的zeromq的publish-subscribe模式,实现了一发多收的功能,同时sub端可以订阅自己指定的topic(序中支持了三种topic的订阅)

2020-11-04

req_rep.rar

基于zmqpp的zeromq的请求-响应代码,最简单的模式,也是zeromq最脆弱的模式,必须遵循”发一次请求,接收一次响应“的规则 ,否则程序将陷入无限的等等中;

2020-11-04

find_package_simple.rar

find_package module模式的示例代码,包含了依赖库的构建文件、main的构建文件、Findxxx.cmake的查找文件

2020-09-10

vimrc(C++IDE,YCM)

安装了多种插件,如:ctrlp、ycm、fzf、vim-snippets、wm。 下载后可以直接使用(ycm需要安装,安装过程详见我的博客:https://blog.csdn.net/lianshaohua/article/details/108225916)

2020-09-08

vim的配置文件vimrc

vimrc的模板,对vim进行了大量的配置,安装了十几个插件,把vim打造成了具有智能提示、智能补全功能的IDE;其中,ycm插件的安装可参见我的博客

2020-09-03

multi_cast.rar

linux平台下面的,基于udp的组播示例,包含了发送和接收示例代码,还有CMakeLists.txt文件,下载后可直接编译运行

2020-09-01

(cmake最全的书)cmake.pdf

cmake大全,详细介绍了cmake的安装、配置、使用;可谓是不可多得好书,网上很多只介绍了一部分,这本书从基础到高级,都有介绍

2020-08-26

Visual Assist X.rar

microsoft visual studio 的visual assist X助手,支持vs2019

2020-08-18

kline.rar(python源代码)

使用python免费获取证券、数据货币的k线数据,具体的做法详见kinke.rar中的py文件,代码相对来说简单,效率非常之高

2020-08-04

centos7的yum源

centos7的yum源,下载后解压,然后放到/etc/yum.repo.d/目录,然后执行:yum clean && yum makecache命令,即可使用yum install安装

2019-02-20

基于boost的序列化与反序列化

1、包含文件和二进制两种序列化的方式 2、支持类的序列化和STL容器的序列化 3、支持序列化的流自定义(示例中使用的是std::stringstream,也可以使用其他的流)

2018-09-07

3DES加密算法C++实现

1、实现了3DES功能的C++代码 2、支持多个key输入、支持ECB、CBC填充模式 3、不是.exe程序,是代码段;

2012-01-31

模拟生产者/消费者问题

用C#实现生产者和消费者问题: 1、用线程实现 2、详解使用了同步与互斥 3、引例能达到举一反三的作用,可以解决工作中很多与线程有关的问题

2009-11-13

可停靠的窗口

通过使用开源的WeifenLuo.WinFormsUI.Docking.dll,成功的创建出了类似于VS2005的可停靠窗口,个人感觉非常的酷,当然也非常的好用,能记住您当前窗口的个数及们置状态,下次启动自动加载......

2008-05-30

Hashtable的使用

Hashtable的基本用法,遍历等操作

2008-05-26

异形窗体的实现

用代码/图片实现异形窗体,图片的实现稍稍慢一些

2008-05-26

递归选中TreeView当前结点的所有子结点

几行简单代码,雕虫小技,但可以演生出一些其它功能来

2008-05-26

SaveTreeNodesToXML

把Treeview的结点保存为XML文件并从XML文件生成树结点 (有点过时了。。。。。。请大家三思下载,由于对我来讲太简单再加上工作忙所以也没有时间更新,对不起!)

2007-08-15

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

TA关注的人

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