自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Wallace

IT man on the way

  • 博客(53)
  • 资源 (15)
  • 收藏
  • 关注

原创 libevent高性能网络库源码分析——事件循环(五)

libevent事件循环的流程事件循环源码分析libevent事件循环的流程libevent将IO事件、信号事件和定时器事件很好的结合在一起,采用了统一的事件源方式,即把信号事件也转换成IO事件,然后采用同一套IO复用机制去监听。libevent的事件循环通过event_base_loop完成,另外一个事件循环函数是event_base_dispatch,其功能上即为没有设置标志的 event_b

2016-04-22 00:53:04 1064

原创 libevent高性能网络库源码分析——事件处理框架(四)

event_base结构event_base的初始化接口函数libevent中基于Reactor模式的事件处理框架对应event_base,在event在完成创建后,需要向event_base注册事件,监控事件的当前状态,当事件状态为激活状(EV_ACTIVE)时,调用回调函数执行。本文主要从以下几方面进行分析:event_base的结构,event_base的创建,事件的注册、事件分发、事件注

2016-04-19 22:03:46 5398

原创 libevent高性能网络库源码分析——事件(event)及其接口(三)

libevent的结构event结构event相关接口事件

2016-04-19 16:14:16 1006

原创 libevent高性能网络库源码分析——Reactor模式(二)

IO模型介绍Reactor模式IO模型介绍在介绍libevent的Reactor模式之前,首先介绍下IO模型的: 1、 同步阻塞IO(Blocking IO): 即传统的IO模型。当用户进程向系统发起read操作时,首先需要在内核中数据准备和内核态到用户进程的数据拷贝。当两个步骤都完成后,才会返回read结果状态,才能执行后续的数据处理操作。{ read(socket, buffer)

2016-04-18 20:28:47 3928

原创 libevent高性能网络库源码分析——介绍(一)

libevent介绍libevent源代码结构libevent介绍Libevent是一个开源的轻量级高性能网络库,基于C语言编写。该网络库基于事件驱动,具有如下优点:事件驱动,基于高性能的Reactor(反应器)模型;跨平台,支持 Windows、Linux和 Mac Os; 支持多种 I/O多路复用技术 epoll、poll、dev/poll、select 和kqueue 等,对I/O多路复

2016-04-17 21:29:27 1425

原创 DBLP实验数据集处理

DBLP介绍XML数据格式解析XMLDBLP介绍DBLP是计算机领域的英文文献数据库,收录了国际期刊和会议等公开发表的论文。DBLP没有提供对中文文献的收录和检索功能,国内类似的权威期刊及重要会议论文集成检索系统有C-DBLP。DBLP是德国特里尔大学的Michael Ley负责开发和维护。它提供计算机领域科学文献的搜索服务,但只储存这些文献的相关元数据,如标题,作者,发表日期等,并使用XML存

2016-04-12 14:12:14 7394 9

转载 NLP -- 公开数据收集

wiki数据集 下载地址是:http://dumps.wikimedia.org/ 介绍:http://en.wikipedia.org/wiki/Wikipedia:Database_download wikipedia只是Wikimedia基金会的一个子项目,wikimedia下面还有多个其他的重要项目: wiktionary 一个语义化的关联词典,形式上类似于wo

2016-04-07 23:24:07 2991

原创 社区发现数据集

社区发现数据集目录社区发现数据集目录基于链接分析的数据集基于链接与离散型属性的数据集基于链接与文本型属性的数据集其他常见的数据集链接基于链接分析的数据集Zachary karate club Zachary 网络是通过对一个美国大学空手道俱乐部进行观测而构建出的一个社会网络.网络包含 34 个节点和 78 条边,其中个体表示俱乐部中的成员,而边表示成员之间存在的友谊关系.空手道俱乐部网

2016-04-07 23:09:05 40280 48

原创 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-05-23 15:37:43 459

转载 Makefile详解

原文:跟我一起写 Makefilehttp://www.cnblogs.com/awpatp/archive/2010/06/24/1764103.html什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多

2014-12-01 15:24:38 534

原创 awk命令详解

1、awk介绍awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan

2014-11-26 00:12:19 953

原创 sed命令详解

1、介绍sed是一个非交互式的编辑器,它不会修改原有输入的文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。sed特别适用于对文件行的处理,包括如字符串查找,替换,空格剔除等,具体执行过程如下:1)首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间)2)处理临时缓冲区中的行,完成后把该行发送到屏幕上,并将该行从临时缓冲区中删除

2014-11-25 22:03:04 682

转载 C/C++函数调用过程分析

这里以一个简单的C语言代码为例,来分析函数调用过程代码: 1 #include 2 3 int func(int param1 ,int param2,int param3) 4 { 5 int var1 = param1; 6 int var2 = param2; 7 int var3 = param3; 8

2014-11-04 23:47:19 546

转载 C++中的操作符重载

一、什么是操作符重载操作符重载可以分为两部分:“操作符”和“重载”。说到重载想必都不陌生了吧,这是一种编译时多态,重载实际上可以分为函数重载和操作符重载。运算符重载和函数重载的不同之处在于操作符重载重载的一定是操作符。我们不妨先直观的看一下所谓的操作符重载: 1 #include 2 3 using namespace std; 4 5 int main() 6

2014-11-04 23:43:52 496

转载 C++虚继承的概念

C++中虚拟继承的概念为了解决从不同途径继承来的同名的数据成员在内存中有不同的拷贝造成数据不一致问题,将共同基类设置为虚基类。这时从不同的路径继承过来的同名数据成员在内存中就只有一个拷贝,同一个函数名也只有一个映射。这样不仅就解决了二义性问题,也节省了内存,避免了数据不一致的问题。class 派生类名:virtual 继承方式  基类名virtual是关键字,声明该基类为派生类的虚

2014-11-04 23:38:53 542

转载 C++中虚析构函数的作用

我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明:        有下面的两个类:class ClxBase{public:    ClxBase() {};    virtual ~ClxBase() {};    virtual void DoSomething() { cout  "Do 

2014-11-04 23:34:30 455

转载 C++访问控制权限

第一:private, public, protected 访问标号的访问范围,在没有继承的情况下:private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。但不能被该类的对象访问。public:

2014-11-04 23:31:06 715

转载 strcpy和memcpy的区别

strcpy和memcpy的区别strcpy和memcpy都是标准C库函数,它们有下面的特点。strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。已知strcpy函数的原型是:char* strcpy(char* dest, const char* src);memcpy提供了一般内存的复制。即memcpy对于需

2014-11-04 23:20:14 463

转载 C++中的空类,默认产生哪些类成员函数?

class Empty{  public:      Empty(); // 缺省构造函数      Empty( const Empty& ); // 拷贝构造函数      ~Empty(); // 析构函数       Empty& operator=( const Empty& ); // 赋值运算符       Empty* ope

2014-11-04 23:18:27 604

转载 C++内存分配情况

1、程序代码区:存放函数体的二进制代码。  2、全局区数据区:全局数据区划分为三个区域。全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。常量数据存放在另一个区域里。这些数据在程序结束后由系统释放。我们所说的BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英

2014-11-04 23:13:21 559

转载 搜索领域BM25算法

BM25 is a bag-of-words retrieval function that ranks a set of documents based on the query terms appearing in each document, regardless of the inter-relationship between the query terms within a docum

2014-11-04 22:56:28 628

原创 Linux wc命令

wc命令:wc命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。语法:wc [选项] 文件...说明:该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。下面让我们来简单的看一下其支持的参数及其代表的含义。

2014-11-03 21:37:12 559

原创 Linux fgrep命令

fgrep该命令用来

2014-11-03 21:07:52 1466

原创 Linux export命令

功能说明:设置或显示环境变量。语  法:export [-fnp][变量名称]=[变量设置值]补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。参  数: -f  代表[变量名称]中为函数名称。 -n  删除指定的变量。变量实际上并未删除,只是不会输出

2014-11-03 20:49:42 546

转载 Linux source命令

source命令用法:source FileName作用:在当前bash环境下读取并执行FileName中的命令。注:该命令通常用命令“.”来替代。如:source .bash_rc 与 . .bash_rc 是等效的。                source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是个点符号,(从BourneShel

2014-11-03 20:21:10 582

转载 .bash_profile和.bashrc的区别及启动过程

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时

2014-11-03 20:06:31 557

原创 寻找数组最大K个数

1、问题描述给定一个数组

2014-11-02 16:45:30 701

原创 归并排序

1、归并排序归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行比较,如果有数列为空,那直接将另一个数列的数据依次取出即可。

2014-11-02 14:54:40 532

原创 堆及堆排序

1、二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总是大于或等于任何一个子节点的键值时为最大堆。当父结点的键值总是小于或等于任何一个子节点的键值时为最小堆。下图展示一个最小堆:

2014-11-02 14:19:22 528

原创 快速排序

快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)

2014-11-02 13:18:31 458

原创 整型数其二进制表示中”1“的个数

初看这个题目,给人的第一感觉是要把整数转化成二进制表示,然后在

2014-11-02 10:56:45 661

原创 Python切片操作

Python切片

2014-11-01 21:38:21 1721

原创 grep命令常用参数及用法

linux grep命令常用参数总结,grep正则表达式

2014-10-31 21:33:35 3489

原创 Python编码问题

Python编码问题1、常见的编码

2014-10-30 22:17:13 696

原创 Indri和Terrier搜索引擎的使用

Indri和Terrier都是开源的搜索引擎,其中Indri作为Lemur项目的一个重要部分,具有强大的查询接口,易建索引,可扩展,高效率等优点。可以在SourceForge Lemur Project Page中下载。Terrier也是IR领域非常有影响力的开源搜索引擎,Terrier是Glasgow大学用Java语言编写的,具有高效灵活及易于部署等特点,目前最新的版本为Terrier 4.

2014-10-29 20:26:21 5022 3

转载 Java HashMap实现机制

1.    HashMap概述:   HashMap是基于哈希表的Map接口的非同步实现()。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。

2014-10-27 20:50:40 438

转载 C++笔试题解析

经典C++笔试题解析1、private 与 protect 关键字的区别。派生类能访问基类的protect成员而不能访问private成员。Private对派生类及用户都不可见,public对派生类和用户都可见,private介于二者之间,对派生类可见对用户不可见。 2、友元,friend 如何声明一个友元。 3、缺省构造函数。当类声明了一个带参

2014-04-18 20:37:26 1652

原创 操作系统知识点

上一节对数据库的知识做了一个小总结,实际找工作过程中,因为公司或单位侧重点不一样,考察的知识也是不尽相同的,但是作为计算机类的学生,操作系统的知识也是必不可少的,去年参加笔试面试的时候,腾讯微软阿里等公司的笔试题都或多或少对操作系统相关的知识点进行了考察。作为一个非计算机科班出生的学僧,当初并没有学这门课,略尴尬,只有临时啃书补一补了,这里给出的是一份操作系统常考知识点的总结,希望能给大家带来一些

2014-04-18 20:35:43 1398

原创 数据库知识点总结

数据库也是计算机类笔试面试中不可避免会遇到的考点,尤其是银行和部分传统软件类公司。这里根据整理的资料,对数据库的相关知识也做个总结吧。希望学过数据库但长时间不用的同学根据这些知识能够回忆和重拾,没学过的同学能掌握一些数据库的基础知识。第一节一、相关概念1. Data:数据,是数据库中存储的基本对象,是描述事物的符号记录。2. Database:数据库,是长期储存在计算机

2014-04-18 20:27:33 2728 1

原创 程序员面试智力题(二)

史密斯住在第十三号大街,这条大街上的房子的编号是从13号 到1300号。琼斯想知道史密斯所住的房子的号码。琼斯问道:它小于500吗? 史密斯作了答复,但他讲了谎话。琼斯问道:它是个平方数吗? 史密斯作了答复,但没有说真话。琼斯问道:它是个立方数吗? 史密斯回答了并讲了真话。琼斯说道:如果我知道第二位数是否是1,我就能告诉你那所房子的号码。史密斯告诉了他第二位数是否是1,琼斯也讲

2014-04-18 19:52:01 2200

POSIX多线程程序设计

本书深入描述了IEEE的开放系统接口标准-POSIX线程,通常称为Pthreads标准。本 书首先解释了线程的基本概念,包括异步编程、线程的生命周期和同步机制;然后讨论了一些高级话题,包括属性对象、线程私有数据和实时调度。此外,本书还讨论了调度的问题,并给出了避免错误和提高性能等问题的有价值的建议。本书使用了大量注释过的实例来解释实际的概念,并包括Pthreads。

2016-04-21

一线架构师实践指南(温昱)

本书从架构师经常遇到的困惑出发,总结软件架构设计中经常遇到的问题,提出“方法体系必然是软件业界未来发展的重大趋势”,以及“架构设计方法已经扩展到方法体系”的观点。针对软件架构设计的三个阶段(Pre-Architecture阶段、 Conceptual Architecture阶段和Refined Architecture阶段)中的各个具体环节,给出了最佳的实践原则和方法,内容涵盖了从需求分析到生成架构的整个过程。 PDF自带目录标签!目录标签!目录标签!重要的事情说三遍

2016-04-21

Redis学习手册

redis常用接口及使用方法,是学习redis必备的工具

2016-04-21

华东师大 2013计算机专业825真题 第五页

华东师大 2013计算机专业825真题 第五页

2013-10-12

华东师大 2013计算机专业 825 真题 第四页

华东师大 2013计算机专业825真题 第四页

2013-10-12

华东师大 2013计算机专业825真题 第三页

华东师大 2013计算机专业 825 真题 考研 第三页

2013-10-12

华东师大 计算机专业 825 真题 考研 第二页

华东师大 计算机专业 825 真题 考研 第二页

2013-10-12

华东师大 计算机专业 825 真题 考研

华东师大 计算机专业 825 真题 考研

2013-10-12

JAVA项目开发全程实录

JAVA项目开发全程实录

2013-09-23

Java访问修饰符

Java 访问修饰符 public protected private

2013-09-23

Latex 教程讲解

这是一篇Latex的教程,特别适合刚入门的人

2013-08-14

MFC编写的坦克大战

MFC编写的坦克大战,可以用VC 6.0软件打开

2011-05-12

MFC显示JPEG图片程序

MFC显示JPEG图片程序,可以用VC 6.0打开进行调试,改变,使符合自己的要求

2011-05-12

VC++设计简单的聊天室程序

用VC++设计简单的聊天室程序完整课程设计

2011-05-04

基于C语言的“贪吃蛇”游戏的设计与实现

C语言的“贪吃蛇”游戏的设计与实现,里面有详细的解释

2011-05-04

空空如也

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

TA关注的人

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