5 海马HiMark

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 1w+

windows通信之共享文件映射

client// shareclient.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include "pch.h"#include <iostream>#include<Winsock2.h>#include<windows.h>#include<stdio.h>#pragma warning(...

2019-08-15 20:41:57

windows 通信之命名管道

client//等待实例化//创建管道//发收数据//关闭会话#include "pch.h"#include <iostream>#include <windows.h>#include <stdio.h>#include<cstring>using namespace std;void main(){ char buf...

2019-08-15 20:40:10

winsock I/O通信之Select

//select 特点 (轮询)//可监控的文件描述符取决于sizeof(fdset)值//将文件描述符加入select监控集的同时,使用数组保存select监控的文件描述符//select返回时将数组中的文件描述符,与监控的文件描述进行比较//select 缺点//每次调用都要设置文件描述符集合,接口使用角度不方便//每次调用都要把fd集合从用户态拷贝到内核态开销比较大//每次调用...

2019-08-15 20:38:14

编译与反编译

代码从预处理,编译,汇编,链接,最终形成文件,C语言作为编译语言,可以准确定义在不同情况下所采取的行动。程序的执行过程预处理:头文件展开,宏替换,去掉注释 test.i编译: 生成汇编码词法和语法的检查 test.s汇编:把汇编码转换成机器码 test.o链接:...

2019-08-11 22:44:02

VS217编译安装Detours库

A、添加工程的头文件目录:工程—属性—配置属性—c/c+±–常规—附加包含目录:加上头文件存放目录。B、添加文件引用的lib静态库路径:工程—属性—配置属性—链接器—常规—附加库目录:加上lib文件存放目录。C 然后添加工程引用的lib文件名:工程—属性—配置属性—链接器—输入—附加依赖项:加上lib文件名编译Detours库生成Lib文件1 将下载的Detours放到目录下:C:\P...

2019-08-08 09:32:59

winsock I/O selec/WSAEventSelect模型

#include<Winsock2.h>#include<stdio.h>#pragma comment(lib,"ws2_32.lib")#pragma warning(disable:4996)/*//创建服务器套接字 socket//绑定本地地址 bind//进入监听模式 listen//select模式 //构造fd_set集合 fd_...

2019-07-30 21:10:21

Winsock多线程TCP通信

#include<WinSock2.h>#pragma warning(disable:4996)#pragma comment(lib,"ws2_32.lib")#include<stdio.h>SOCKET clientSocket[1024];int index = 0;DWORD proc(LPVOID lpThreadParameter){ ...

2019-07-30 21:08:06

window下socket实现TCP服务器

服务器1.初始化WSAStartup(…)2.创建Sockets = Socket ( … )3.绑定端口ret = bind ( … )4.监听ret = listen ( … )5.接收客户端的连接请求s_new = accept ( … ) // 三次握手发生在这个过程6.收发数据ret = recv ( … )// 阻塞模式, 内存不够存放发送的信息时,则阻塞...

2019-07-29 20:57:05

Windows 命名管道通信

什么是命名管道?命名管道是一种简单的进程间通信机制,命名管道的命名规范\\server\Pipe\[path]name 第一部分server,指定服务器名字 第二部分Pipe,硬编码即原样照录 第三部分 唯一命名+路径例如\myserver\Pipe\mypipe\Testserver\pipe\coldirectory\funtest\jim\.\Pipe\Easyname...

2019-07-29 20:50:38

Centos7 linux下 安装 Redis 5.0

环境:Centos7+Redis 5.0,如果环境不符合,本篇仅供参考。1、准备工作作者习惯软件安装包放在单独路径,解压路径也放在单独路径。下载路径:mkdir -p /data/softworecd /data/software2、软件下载redis包下载地址,可以下载后用ftp工具导入下载路径中,也可以使用wget直接下载。作者:wget http://download.redi...

2019-07-23 09:19:59

CephFS简析

Ceph简介分布式存储系统,支持对象存储,块存储,文件系统。无中心结构,系统规模和存储容量可以扩展。多副本,纠错码确保数据安全。Ceph系统架构Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统特点:高性能,高可用,高扩展,特性丰富。 Clients:客户端(数据用户) mds:Metadata server cluster,元数据服务器(缓存和同步分布...

2019-07-21 23:09:08

剑指offer,面试题1,面试题2

面试题1:赋值运算符函数面试题2:实现Singleton模式赋值运算符函数//TEST 1赋值运算符重载class String{public: String(const char* pst =nullptr); String(const String& pst); ~String(); private: char * _pst;};//赋值运算符重载,释放旧空...

2019-01-27 14:32:01

Linux大三搜索命令locate,grep,find

locate:可以搜索文件和目录的名称,但是不能搜索文件的内容。grep:在文件中搜索数据find:根据指定条件对文本进行搜索locate搜索文件名数据库 -i 不区分大小写 locate -n 3 test 查看前三个结果 locate test | less 结果分屏显示grep在文本文件中搜索匹配的模式 grep hater * 查找所有使用hater字符串的...

2019-01-17 08:37:46

查看文件的命令总结cat,less,head,tail

查看文件的命令总结cat,less,head,tailcat:一次显示整个文件内容less:分页一次一屏显示文件内容head:显示文件开始部分tail:显示文件结束部分catcat 在标准输出上查看文件cat file1 file2 将文件拼接至标准输出设备cat file1 file2>file3 将文件拼接后保存到其他文件cat -n file1 file2>f...

2019-01-17 07:43:10

C++十大设计模式(易懂)

单例模式:单例模式:确保一个类只有一个实例,并且这个实例化向整个系统提供(例如只有一台打印机,可以有多个打印任务队列,但是只能有一个正在打印)。单例模式又分为(饿汉模式,懒汉模式)两种饿汉模式:程序运行即创建对象并实例化,静态实现所以线程是安全的懒汉模式:创建对象不实例化,需要的时候才实例化,线程不安全需要(加锁)工厂模式:建立对象的类就如一个加工厂,建立对象就如一个产品,使用产...

2018-12-18 20:33:24

设计模式-工厂模式(简单,工厂方法,抽象)

工厂模式建立对象的类就是一个工厂,被建立的对象就是一个产品,在工厂中加工产品,不用在乎产品如何产生。降低模块耦合。工厂模式分类包括 简单工厂模式,工厂方法模式,抽象工厂模式。1简单工厂模式由工厂对象决定创建哪一个产品类的实例,这些产品类(继承自父类或接口)。例如:一个工厂生产A,B两种产品,当客户需要那种产品就告诉工厂。缺点:当新增加一种产品的时候,就要去修改工厂的类//实现方法:...

2018-12-18 20:05:55

Mysql数据库 索引的原理和优化

本文主要讲述了如何加速动态网站的MySQL索引分析和优化。参考原文 https://www.2cto.com/database/201707/660712.html一、什么是索引?索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,如果作为搜索条件的列上已经创建了索引,MySQL无需...

2018-12-17 12:07:55

系统内存不足的处理方案?

当operator new没有能力申请到所需要的空间时,通常会丢一个exception(异常类)打印出信息。常见的 C 习惯做法:定义一个与型别无关的宏,用来配置内存,并做检查,以确定配置成功。对于C++而言的宏如下#define NEW(PTR,TYPE) try{ (PTR)=new TYPE;} catch(std::bad_alloc&) { assert(0); }...

2018-12-17 10:26:05

面试总结:B树,B+树的原理及区别

之前在网上看到过一些B树与B+树的区别然后主要是针对定义来陈述,分分钟看的我快要冬眠,然后在一次面试遇到该没问题没回答上来一首凉凉送给自己,今天老老实实的分享自己对B树,B+树浅显理解,若望指出不足。B树的原理动态查找树主要包括:二叉搜索树,平衡二叉树,红黑树,B树,B-树时间复杂度O(log2N),通过对树高度的降低可以提升查找效率尤其是在大量数据进行存储的时候会存储到外部磁盘,通过对...

2018-12-08 18:58:32

剑指offer 树的子结构

输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)class Solution{public: bool Hassubtree(TreeNode* root1, TreeNode* root2) { if (root1 == nullptr || root2 == nullptr) //约定树2不为空 return false; /...

2018-12-08 15:28:09

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。