- 博客(24)
- 资源 (10)
- 收藏
- 关注
原创 Windows下kafka安装
1. 环境准备JDK(需要Java8环境)下载kafka、zookeeper2. 配置zookeeper打开zookeeper\conf目录,编译zoo.cfg文件把dataDir的值改成“./zookeeper/data”添加系统变量:ZOOKEEPER_HOME=D:\DNPS\zookeeper编辑path系统变量,添加路径:%ZOOKEEPER_HOME%\...
2020-03-31 17:53:59 263
原创 shell脚本报错:-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory
问题:工作中有时候在Windows下编辑的脚本,在linux下执行报错解决办法1:1) vim命令打开文件: # vim backup.sh2)在vi命令模式中使用 :set ff 命令3)看到该文件的格式为dos4)修改文件编码format为unix,命令:set ff=unix5)保存文件,退出即可,命令:wq解决办法2:执行命令: dos2un...
2020-03-27 14:52:58 198
原创 Shell脚本学习篇——使用crond定时执行任务(数据备份)
1. 前言crond是linux系统中用来定期执行命令或者指定程序任务的一种服务或者软件。用rpm -qa | grep crontab查看是否安装,如果没有安装就执行 yum install -y crontabs,Centos6/7系统默认存在。常用命令(具体命令参考这一篇文章):crontab -l 定时任务列表crontab -e 编辑定时任务/sbin/ser...
2020-03-27 13:42:53 1040
原创 Python——知识点小结
优雅 明确 简单 (解释执行 不需要编译 速度慢 代码少)适合:1.开发web网站和各种网站服务2.系统工具和脚本3.把其他语言开发的模块包装起来 方便使用知识点1.单行注释:以#开头, 多行注释:''' '''2.中文支持: #coding=utf-8 或者 #-*- coding=utf-8 -*-3.标示符的规则:由字母、下划线和数字组成,且数字不能开头4...
2020-03-26 17:31:32 156
原创 C++——linux下valgrind工具检测内存泄露和性能分析
1. Valgrind简介官网Valgrind介绍是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。这些工具之中最有名的是Memcheck。它能够识别很多C或者C++程序中内存相关的错误,这些错误会导致程序崩溃或者出现不可预知的行为。1)memcheck:检查程序中的内存问题,如泄漏、越界、非法指针等(本文重点学习)。2)callgrind:检测程序代码的运行时间和调用过程,...
2020-03-26 12:54:01 1291
原创 C++——内存泄漏检测工具Visual Leak Detector
1.安装Visual Leak Detector官网下载安装完成后,会自动将其include目录、静态库目录(lib目录)添加到VS的附加库目录,无需手动添加include目录和lib目录。安装完成后在VisualLeakDetector安装目录下找到vld.ini文件,修改ReportTo = both如果在后面测试的时候call stack没有输出信息,则修改Rep...
2020-03-25 12:30:37 530
原创 C++——UDP的socket通信
1.UDP流程UDP特点:基于报文、不保证按序发送、一对一,一对多,多对一和多对多的交互通信、不可靠性(容易出现丢包现象)。服务端: 创建socket-->bind-->循环接收/发送数据-->关闭socket客户端:创建socket-->bind(可选)-->循环发送/接收数据-->关闭socket流程图: UDP编程的服务端一般步骤是...
2020-03-24 18:21:36 7325 2
原创 C++——TCP的socket通信
1.TCP流程TCP编程的服务器端一般步骤是: 1、创建一个socket,用函数socket(); 2、设置socket属性,用函数setsockopt(); * 可选 3、绑定IP地址、端口等信息到socket上,用函数bind(); 4、开启监听,用函数listen(); 5、接收客户端上来的连接,用函数accept(); 6、收发数据,用函数send(...
2020-03-24 12:41:57 1193
原创 C++——TCP和UDP协议(上)
1.前言OSI七层模型:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 口诀: “物数网传会表应”面试中经常问的 TCP 和 UDP(属于传输层协议) 的区别,简单总结如下:TCP 和 UDP 的区别:TCP面向连接(如打电话要先拨号建立连接); UDP是无连接的,即发送数据之前不需要建立连接 UDP程序结构较简单 TCP 是面向字节流的,UDP 是基于...
2020-03-23 15:56:40 1987
原创 Linux——定时crond使用
因为之前工作中使用的时候没有做记录,这里简单记下使用。参考1:linux定时执行shell脚本文件参考2:使用shell脚本或命令行 添加crontab 定时任务命令介绍:crontab -l 定时任务列表crontab -e 编辑定时任务/sbin/service crond start //启动服务/sbin/service crond stop //关闭服务...
2020-03-20 09:35:48 159
原创 C++11——std::tuple
std::tuple是一个固定大小的不同类型值的集合,是泛化的std::pair。和c#中的tuple类似,但是比c#中的tuple强大得多。我们也可以把他当做一个通用的结构体来用,不需要创建结构体又获取结构体的特征,在某些情况下可以取代结构体使程序更简洁,直观。样例:// std::tuple class CTuple{public: CTuple() {} ~CTuple(...
2020-03-19 17:16:10 869 1
原创 C++11——std::atomic
std::atomic对int, char, bool等数据结构进行原子性封装,在多线程环境中,对std::atomic对象的访问不会造成竞争-冒险。利用std::atomic可实现数据结构的无锁设计。Atomic.h// std::atomic class CAtomic {public: CAtomic() { m_Foo = 0; } ~CAtomic() {} voi...
2020-03-18 17:03:18 1520
原创 C++11——正则表达式
1. 描述C++11支持了正则表达式,主要算法有: regex_match,正则表达式要匹配整个字符串 regex_search,正则表达式可以匹配字符串中的一部分或全部 regex_replace,用一个字符串替换源字符串中匹配正则表达式的那部分子串2. 使用Regex.h#pragma once// 正则表达式class CRegex{public: ...
2020-03-17 17:42:33 1544
原创 C++11——计时器
计时器常用来计算某个函数或模块耗时。 auto start = std::chrono::system_clock::now(); int nCnt = 0; for (int i = 1; i < 1000; i++) { nCnt += i; std::this_thread::sleep_for(std::chrono::mill...
2020-03-16 14:48:54 469
原创 C++11——获取当前时间
时间格式自定义// 获取当时系统时间const std::string GetCurrentSystemTime(){ auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); struct tm* ptm = localtime(&t); char date[60] ...
2020-03-16 14:41:40 2592
原创 C++11——可变参数模板
可变模板中,省略号的作用有两个:1.声明一个参数包T... args,这个参数包中可以包含0到任意个模板参数;2.在模板定义的右边,可以将参数包展开成一个一个独立的参数;// std::template 可变参数模板//可变模板中,省略号的作用有两个://1.声明一个参数包T... args,这个参数包中可以包含0到任意个模板参数;//2.在模板定义的右边,可以将参数包展开成一...
2020-03-16 14:30:27 368
原创 C++11——条件变量std::condition_variable
std::condition_variable 条件变量可以履行发送者或接收者的角色,作为发送者,它可以通知一个或多个接收者。条件变量允许我们通过通知进而实现线程同步。举例:// std::condition_variable//当 std::condition_variable对象的某个wait 函数被调用的时候,它使用 std::unique_lock(通过 std::mute...
2020-03-16 14:21:16 350
原创 C++11——Lambda表达式
1.说明ambda表达式是C++11引入的一个重要特性之一,利用Lambda表达式,可以方便的定义和创建匿名函数。Lambda表达式完整的声明格式如下:[capture list] (params list) mutable exception-> return type { function body }各项具体含义如下:capture list:捕获外部变量列表 p...
2020-03-16 13:29:01 665
原创 C++11——std::function和std::bind
std::function 是一种通用的多态函数包装器。std::function 的实例可以存储、复制和调用任何可调用的目标——函数、lambda表达式、绑定表达式或其他函数对象,以及指向成员函数的指针和指向数据成员的指针(统称为“可调用对象”)。基类:Base.h#pragma once// 基类class CBase{public: CBase(){} ~CBase...
2020-03-16 11:25:57 808
原创 C++11——生产者、消费者(锁)
工作中有时候会有遇到边生产边消费的异步场景,这里写了一个简单的demo。Mutex.hpp#include <iostream>#include <deque>#include <thread>#include <mutex>std::deque<int> q;std::mutex mu;std::conditio...
2020-03-16 10:13:22 603
原创 万能的to_string
// 万能的to_stringtemplate<class T>const std::string to_string(const T& t){ std::ostringstream oss; //创建一个流 oss << t; //把值传递如流中 return oss.str();}...
2020-03-13 18:45:22 112
原创 X宏
X宏是汇编语言的一个宏,但很容易转换为C语言宏,工作中小技巧,记录分享大家。头文件: XMacro.h#pragma once#include <stdio.h>// 正常使用// 缺点: 新加入一个颜色,新加入一个颜色,会输出结果错误,或者数组越界enum COLOR_NOR { no_red, no_green, no_blue};static ch...
2020-03-13 17:43:49 538
原创 C++11——不定参数模板
不定参数模板,顾名思义。Template.h#pragma once#include <stdarg.h>//标准参数:模拟可变参数必需的头文件template<class Type>class CCTemplate{public: CCTemplate() {} ~CCTemplate() {} void* operator new(siz...
2020-03-13 16:16:09 4813
转载 超实用网站
转载:https://blog.csdn.net/qq_43901693/article/details/100606828?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
2020-03-03 17:10:45 162
Visual Assist X 2114 (支持vs2015 win10 x64).zip
2020-04-24
cmake-3.17.1-Linux-x86_64.tar.zip
2020-04-24
depends22_x64.zip
2020-04-24
apache-ftpserver-1.1.1.zip
2020-04-24
FTPserver.zip
2020-04-24
cmake-3.17.1-win64-x64.msi
2020-04-15
Jsoncpp解析
2017-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人