自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (5)
  • 收藏
  • 关注

转载 一行命令实现cpu占用率100%

for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done说明:cat /proc/cpuinfo |grep "physical id" | wc -l 可以获得CPU的个数, 我们将其表示为N.seq 1 N

2017-09-21 11:51:17 1335 1

转载 ifstream 的使用方法介绍

ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间;在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符:1、插入器(  向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,cout2、析取器(>>)  从流中

2017-08-07 15:41:55 2703

转载 linux下coredump的产生及调试方法

什么是coredump通常情况下coredmp包括了程序执行时的内存,寄存器状态,堆栈指针,内存管理信息等。能够理解为把程序工作的当前状态存储成一个文件。很多程序和操作系统出错时会自己主动生成一个core文件。怎样使用coredumpcoredump能够用在非常多场合,使用Linux,或者solaris的人可能都有过这样的经历,系统在跑一些压力測试或者系统负载一大的话,系统

2017-06-01 11:37:00 1151

转载 zookeeper原理

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。

2017-05-02 14:21:19 375

转载 Zookeeper编程笔记

初识ZooKeeper,做一些记录。ZooKeeper提供一个集中式服务,包括配置维护、服务命名、分布式同步、组管理。子服务常用于分布式应用。 ZooKeeper体系结构ZooKeeper是开源的用于分布式应用的分布式协调服务。它公开了一组接口,分布式应用可在其基础上实现配置维护、数据同步、服务命名、组管理等上层服务。它采用了类似文件系统的目录树型结构的数据模型。协

2017-05-02 14:03:28 510

原创 C++中类的大小计算方法总结

C++中类的成员函数,静态成员是不占类的大小的。类的大小等于基类的大小+子类个non-static成员变量的大小再+非虚基类大小,如果有多态性还要考虑vptr(可能不止一个)大小,这里成员变量是会被字节对齐的。1、空类的大小为1字节2、字节对齐的问题     成员变量需要整齐的存储,所以若是有不同类型的变量(本身占用字节数不同),则所有变量的大小会按照最大的的大小进

2017-02-21 15:02:38 723

转载 编译型语言、解释型语言、静态类型语言、动态类型语言概念与区别

最近在研究Python和Erlang。反复提到动态类型语言、动态语言、解释型语言这些概念。这些概念很生涩,在这里做一个总结。编译型语言和解释型语言1、编译型语言需通过编译器(compiler)将源代码编译成机器码,之后才能执行的语言。一般需经过编译(compile)、链接(linker)这两个步骤。编译是把源代码编译成机器码,链接是把各个模块的机器码和依赖库串连起来生成可执

2016-05-17 11:41:14 530

原创 redis常用数据机构及操作整理

1.String 存入字符类型 Set name luowen 设置name = luowen 存储 Get name 获取设置好的name的值 Setnx name luowen 设置name键值为luowen 如果存在,则返回0 不存在返回1 Mset name luowen age 23 salary 23

2015-11-24 10:41:17 481

转载 linux下一般程序运行时查找动态库的顺序

linux下一般程序运行时查找动态库的顺序:a.根据环境变量LD_LIBRARY_PATH查找b.根据/etc/ld.so.cache查找c.查找依次在/lib和/usr/lib目录查找。a 举例:由于动态库的链接和运行时的目录是分开指定的,所以编译通过后,运行时boost库找不到的问题存在于当前工程中。解决办法就是设置外环境变量LD_LIBRARY_PATH:#e

2015-09-23 18:25:39 877

转载 23种设计模式全解析

一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

2015-09-15 13:05:25 769

转载 深入剖析 redis 事件驱动

概述redis 内部有一个小型的事件驱动,它和 libevent 网络库的事件驱动一样,都是依托 I/O 多路复用技术支撑起来的。利用 I/O 多路复用技术,监听感兴趣的文件 I/O 事件,例如读事件,写事件等,同时也要维护一个以文件描述符为主键,数据为某个预设函数的事件表,这里其实就是一个数组或者链表 。当事件触发时,比如某个文件描述符可读,系统会返回文件描述符值,用这个值在事件

2015-09-02 16:49:36 625

转载 C/C++回调函数

最近在看Sip协议栈的相关源代码,看到了好多地方的函数调用很独特,其实就是回调函数。于是,我对回调函数产生了很大的好奇。以前,我写VC程序时用到过回调函数,但是没有用C语言来使用。最近,看到国外大量的经典代码中广泛使用了回调函数,都是C语言来实现的,而不是VC windows程序中别人实现自己使用的那种。为了弄明白这种函数的奥妙,首先提出三个问题:1.        回调函数是什么东西?

2015-09-01 15:19:08 423

原创 linux命令之grep

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响

2015-09-01 10:21:20 418

原创 Linux下gdb调试程序之堆栈跟踪

在使用gdb调试时,经常要用到查看堆栈信息,特别是在内核调试时,这显得尤其重要。通过gdb的堆栈跟踪,可以看到所有已调用的函数列表,以及每个函数在栈中的信息。---------------------------------------------------------------------------------一,简单实例。#include stdi

2015-08-31 17:01:28 1082

原创 linux命令之locate

locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。1.命令格式:Locate [选择参数] [样式]2.命令功能:locate命令可以在搜寻

2015-08-31 10:18:42 403

转载 使用gcore工具产生core文件而不杀死进程

解决方法:解决:问题:当调试一个程序的时候,理想状态是不重启应用程序就获取core文件。解决:gcore命令可以使用下面步骤来获取core文件:1. 确认gdb软件包已经被正确安装。2. 使用调试参数编译程序(例如: gcc中使用"-g"选项),编译后不要去除文件的调试符号信息。3. 执行应用程序。4. 执行gcore命令生成指定应用程序的core文件并且保

2015-08-27 19:45:26 10566

转载 Linux下抓包工具tcpdump以及分析包的工具wireshark

近日在学习sip协议时,需要抓取发送、接收数据的情况,于是找到了tcpdump和wireshark这两个工具,tcpdump是用来抓取数据的,wireshark则是用于分析抓取到的数据的,现将用法记录下来:Tcpdump使用方法(1)第一种是关于类型的关键字主要包括host,net,port例如: host 210.27.48.2,指明 210.27.48.2是一台主机,net

2015-08-14 15:29:53 609

原创 编译时遇到 /usr/bin/ld: cannot find -lxxx 错误的解决方法

本文介绍下,在编译软件时,提示usr/bin/ld: cannot find错误的解决方法,有需要的朋友参考下。原因:库文件并没有导入的ld检索目录中。解决方法:   1、确认库文件是否存在,比如-l123, 在/usr/lib, /usr/local/lib,或其它自定义的lib下有无lib123.so, 如果只是存在lib123.so.1,那么可以通过ln -sv

2015-03-06 17:53:09 8810

原创 Python中的文件和目录操作实现代码

对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数。重要的是,这些函数无论是在Unix、Windows还是Macintosh平台上,它们的使用方式是完全一致的。本文将详细解释这些函数的使用方法。首先,我们介绍Python语言中类似于Windows系统的dir命令的列出文件功能,然后描述如何测试一

2015-01-23 17:30:48 705

原创 如何提高python性能

在Python解析器中输入 import this. 一个犀利的Python新手可能会注意到"解析"一词, 认为Python不过是另一门脚本语言. "它肯定很慢!" 毫无疑问:Python程序没有编译型语言高效快速. 甚至Python拥护者们会告诉你Python不适合这些领域. 然而,YouTube已用Python服务于每小时4千万视频的请求. 你所要做的就是编写高效的代码和需要时

2015-01-23 14:18:42 1196

转载 编译错误 --- does not name a type和field `XX' has incomplete type

两个C++编译错误及解决办法--does not name a type和field `XX' has incomplete type 编译错误一:XX does not name a type编译错误二:field `XX' has incomplete type编译错误一:XX does not name a type, 中文意思为“XX没有命名一个

2014-12-03 17:17:56 1003

原创 gdb调试程序

gdb调试程序,实现linux下方便调试程序的工具,值得学习。

2014-11-21 09:38:32 967

原创 linux系统文件解压缩命令总结

linux系统操作中的各种压缩、解压缩命令的全面总结,方便你我的学习和工作。

2014-09-18 19:54:30 1294

原创 linux AWK命令使用详解

linux中awk脚本学习

2014-09-12 11:25:01 1056

原创 linux sed命令使用详解

掌握和学习linux中sed脚本,让你的工作效率迅速提高,还等什么,一起来吧。

2014-09-12 10:47:00 1300

原创 Linux 服务器 文件同步

这次接着上次的linux服务器,介绍下linux服务器中文件的同步,首先介绍rsync服务的安装配置以及如何利用rsync保持Linux服务器间的文件同步。服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服务器来提供下载服务。当一台服务器上的文件更新后,其它的 服务器也需要更新,而且 在更新的时候应该是只对新增或是修改过的文件进行更新,否则会造成网络带

2014-07-16 22:20:48 1024 1

原创 linux服务器启动过程

随着Linux的应用日益广泛,特别是在网络应用方面,有大量的网络服务器使用Linux操作系统。由于Linux的桌面应用和Windows相比还有一 定的差距,所以在企业应用中往往是Linux和Windows操作系统共存形成异构网络。在服务器端大多使用Linux和Unix的,目前Linux的擅 长应用领域是单一应用的基础服务器应用,譬如DNS和DHCP服务器、Web服务器、目录服务器、防火墙、文件

2014-07-14 23:38:48 1395 2

原创 C#学习之路三

八.类对于面向对象语言来说,类是重头戏,C#中类的使用和C++中类似,在细节方面有些差别.首先来看一个C#的类的例子:例:class myclass:mybasicclass   //注意基类不需要写限定符    {        private int a;        public int num()         {             retur

2014-07-13 20:02:50 597

原创 C#学习之路二

五.表达式C#中的运算符,优先级和C++一样,但是需要注意下面的四个运算符*  ,  ->  ,  &   ,sizeof上面的四个运算符在C#的不安全代码中可以使用,但在一般的C#代码中使用是错误的,C#取消了指针,想当然和指针有关的操作符都不能用了. 六.流程控制1.if/if….else语句这个语句和C++没有区别.但是结合类型定义中所讲的类型转换,这里需要注

2014-07-13 19:52:47 560

原创 C#学习之路一

这里所介绍的内容,主要通过对C++和C#语法等方面的异同之处展开对C#的学习,对已有一定C++基础的人学习C#更有效果,随着.NET的深入人心,作为一个程序员,当然不能在新技术面前停而止步,面对着c++在.net中的失败,虽然有一丝遗憾,但是我们应该认识到,对于c++其实就不应该对其在.net中的表现有太大的奢望,因为毕竟它并不是一个.net下的正统语言,.net应该是c#的舞台,作为一个c++程

2014-07-13 19:48:43 649

原创 文件读写的操作整理

一.写入文件C语言中的写入FILE *pFile=fopen("1.text","w");fwrite("http://www.sina.com.cn",1,strlem(http://www.sina.com.cn),pFile);fclose(pFile);//关闭 把文件写入缓冲区fflush(pFile);//刷新缓冲区,立即更新移动到开头写入数据移

2014-07-13 17:50:59 821

转载 设计模式在游戏中的应用说明(二)

(6) 观察者模式     联机射击游戏可以实时显示队友和敌人的存活信息,如果有队友或敌人阵亡,所有在线游戏玩家将收到相应的消息,可以提供一个统一的中央角色控制类(CenterController)来实现消息传递机制,在中央角色控制器中定义一个集合用于存储所有的玩家信息,如果某玩家角色(Player)阵亡,则调用CenterController的通知方法notifyPlayers(),该方

2014-06-22 17:42:40 775

转载 设计模式在游戏中的应用说明(一)

为了方便大家更加系统地学习和掌握各种常用的设计模式,下面通过一个综合实例——“多人联机射击游戏”来学习如何在实际开发中综合使用设计模式。       反恐精英(Counter-Strike, CS)、三角洲部队、战地等多人联机射击游戏广受玩家欢迎,在多人联机射击游戏的设计中,可以使用多种设计模式。下面我选取一些较为常用的设计模式进行分析:       (1) 抽象工

2014-06-22 15:42:53 688

原创 Socket网络编程

在TCP/IP网络应用中,通信的两个进程间相互作用的主要模式是客户/服务器模式(Client/Server model),即客户向服务器发出服务请求,服务器接收到请求后,提供相应的服务。客户/服务器模式的建立基于以下两点:首先,建立网络的起因是网络中软硬件资源、运算能力和信息不均等,需要共享,从而造就拥有众多资源的主机提供服务,资源较少的客户请求服务这一非对等作用。其次,网间进程通信完全是异步的,

2014-06-21 16:01:51 762

原创 Epoll与Select比较

Epoll是什么

2014-06-21 15:00:40 632

转载 网游服务器编程入门之路一

1  服务器的网络连接  大多数的网络游戏的服务器都会选择非阻塞select这种结构,为什么呢?因为网络游戏的服务器需要处理的连接非常之多,并且大部分会选择在Linux/Unix下运行,那么为每个用户开一个线程实际上是很不划算的,一方面因为在Linux/Unix下的线程是用进程这么一个概念模拟出来的,比较消耗系统资源,另外除了I/O之外,每个线程基本上没有什么多余的需要并行的任务,而且网络

2014-06-15 19:44:04 626

原创 设计模式之感悟

回想书中反复叮嘱的内容,实在惭愧!其实每个设计模式的问题背景真的非常之重要!总结以下个人在开发中常用到的模式:单例模式,工厂模式,策略模式,组合模式,适配器模式,观察者模式,等其中最常用的就是前三个! 单例模式,在框架中使用的比较普遍,很多基类都是使用这种方式来创建对象的,非常之重要!工厂模式,这个模式记得在某本书里还拟人化的推出了:工厂三姐妹:简单

2014-06-15 19:11:57 640

原创 数据库的备份和恢复

下面介绍3种备份数据库的方法:MySQL中的每一个数据库和数据表分别对应文件系统中的目录和其下的文件。在Linux下数据库文件的存放目录一般为/var/lib/mysql。在Windows下这个目录视MySQL的安装路径而定,DiaHosting的技术员一般为客户安装在D:serversoftmysql下。如,有一个名为bbs的数据库,那么bbs的数据库文件会存放在/var/lib

2014-06-15 15:39:15 628

原创 MySQL数据同步

MySQL数据同步主要有三种方式:1.利用MySQL自身的数据库同步功能2.利用MySQL数据库的特性(数据库存在固顶目录,并且以文件形式存储),进行数据库目录同步以达到数据同步目的3.利用专用的MySQL数据库同步软件1.利用MySQL自身的数据库同步功能(下面参考自网上的文章,写的非常详细了)MySQL从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数

2014-06-15 15:34:12 933

原创 Java调用数据库存储过程

ConnUtils连接工具类:用来获取连接、释放资源package com.ljq.test;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/

2014-06-15 15:17:53 656

QT5中使用QFtp类

资源文件包括QT5使用qtftp的源码和库文件 1、qtftp的源码 2、QT5使用qtftp的库文件和使用说明 可以自己编译,也可以直接使用编译好的库文件,有使用说明

2016-10-09

socket实现windows与linux通信

可以实现windows向linux传输文件,需要的可以参考

2016-09-30

程序员面试宝典

看了很有益处,帮助您找到理想的工作,一起来扬帆起航。

2012-09-28

MD5加密算法

用于文件加密解密的算法,MD5是一个安全的散列算法。

2012-03-25

空空如也

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

TA关注的人

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