自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 收藏
  • 关注

转载 最新Android开发环境

转自:http://blog.csdn.net/lincyang/article/details/42029257一、一切由运行时错误引起dalvikvm Could not find class '引用包.类', referenced from method... 其实在编译时也会见到如下错误:       [dx]        [dx] trouble pro

2016-11-22 21:24:33 353

转载 类成员函数中重载/重写(覆盖)/重定义(隐藏)的区别

转自http://blog.csdn.net/yanjun_1982/archive/2005/09/02/470405.aspx 这三个概念都是与OO中的多态有关系的。如果单是区别重载与覆盖这两个概念是比较容易的,但是隐藏这一概念却使问题变得有点复杂了,下面说说它们的区别吧。       重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别

2016-08-23 15:34:21 3846

转载 编写一个单例类

在面试的时候,单例模式是经常被提问到的,编写一个Singleton类,可以更好的向面试官展现出自己对单例模式的理解。下面我列举出四个方式在展示Singleton类1.简单的方式,但这个有一个缺点,那就是在并发执行时,可能存在多个实例。 1 public class SingletonDemo1 { 2 private static SingletonDemo1 INS

2016-08-23 15:13:05 4532

转载 轮询调度算法

毫无疑问,随着互联网、移动网络接入成本的降低,互联网正在日益深入地走入我们的生活,越来越成为人们获取信息的高效平台,ICP行业也顺势呈现出强劲的成长趋势,成为互联网迅猛发展形势下最大的受益者,也直接促成了从web1.0到web2.0以及社区、博客、视频等一系列互联网时代的更迭和运营模式的变动。  但是随着各站点访问量和信息交流量的迅猛增长,如何使用最小的资源成本,提高网络的效率,最优化用户

2016-08-22 20:01:30 2499

转载 测试一个登陆界面

如何测试一个网页登陆界面  具体需求: 有一个登陆页面, (假如上面有2个textbox, 一个提交按钮。 请针对这个页面设计30个以上的test case.) 此题的考察目的: 面试者是否熟悉各种测试方法,是否有丰富的Web测试经验, 是否了解Web开发,以及设计Test case的能力 这个题目还是相当有难度的, 一般的人很难把这个题目回答好。 首先,你要了解用户的需求,比

2016-08-21 21:08:05 1173

转载 OSI模型详解

OSI(Open System Interconnection Reference Model,OSI/RM)模型把网络通信的工作分为7层,它们由低到高分别是物理层(Physical Layer),数据链路层(Data Link Layer),网络层(Network Layer),传输层(Transport Layer),会话层(Session Layer),表示层(Presentation

2016-08-21 17:45:31 519

转载 cookie和session的区别

这些都是基础知识,不过有必要做深入了解。先简单介绍一下。二者的定义:当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都纪录下来。当下次你再光临同一个网站,WEB 服务器会先看看有没有它上次留下的 Cookie 资料,有的话,就会依据 Cookie里的内容来判断使用者,送出特定的网页内容给你。

2016-08-20 20:19:45 297

转载 二维数组做函数参数

转自:http://blog.csdn.net/yunyun1886358/article/details/5659851今天在论坛上有朋友提问:声明函数如下void function(int** pInt),意图是想参数传递一个二维数组。于是就定义了一个二维数组,比如 int[1][1],然后调用函数。结果如何?当然是失败了,编译器提示:cannot convert parameter 1

2016-08-20 16:45:58 480

转载 new/delete和malloc/free的一般区别

转自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/16/2593754.html一、基本概念     malloc/free:1、函数原型及说明:      void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指

2016-08-16 17:30:43 275

转载 static在C和C++中的用法和区别

转自:http://blog.csdn.net/skyereeee/article/details/8000512static主要有三个作用:(1)局部静态变量(2)外部静态变量/函数(3)静态数据成员/成员函数前两种C和C++都有,第三种仅在C++中有,下面分别作以下介绍:一、局部静态变量在C/C++中, 局部变量按照存储形式可

2016-08-16 16:55:00 348

转载 Jmeter性能测试入门

转自:http://www.cnblogs.com/TankXiao/p/4045439.htmlJmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。【小坦克Jmeter教程】,将会覆盖Jmeter的各个功能,并且会

2016-08-15 11:55:47 316

转载 Jmeter-->一个简单的压力测试

转自:http://www.cnblogs.com/TankXiao/p/4059378.html#sourceJmeter是一个非常好用的压力测试工具。  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好。 阅读目录什么是压力测试 做压力测试的常用工具做压力测试的步骤如下:本文做压力测试的例子第一步: 使用CSV Da

2016-08-15 11:25:53 888

转载 Jmeter下载及安装配置

Jmeter工具也是前几天同事介绍我认识,稍微百度下Jmeter的相关资料,试着安装和配置。在此记录,记录学习过程,以备忘。 Jmeter的介绍就略过。直接进入主题:一、Jmeter的下载安装 1. http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录(我的路径:E:\apache-jmeter-2.12)2、安装

2016-08-15 10:57:04 2347

原创 Linux基础命令总结

ls 命令-a 列出目录下的所有文件,包括以 . 开头的隐含文件。-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。-c 输出文件的 i 节点的修改时间,并以此排序。-d 将目录象文件一样显示,而不是显示其下的文件。-e 输出时间的全部信息,而不是输出简略信息。-f -U 对输出的文件不排序。-g 无用。-i 输出文件的 i

2016-08-13 11:08:26 280

转载 硬链接和软链接的区别

1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的

2016-08-12 15:28:41 352

原创 shell脚本学习笔记之grep&正则表达式

grep命令是Linux中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。grep的主要参数:-c:只输出匹配行的计数。 -I:不区分大小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配

2016-08-12 11:29:46 453

原创 shell脚本命令学习笔记

1)命令代换---` `和$()Shell先执行该命令,然后将输出结果立刻代换到当前命令行中。那么两者有什么区别吗?在多层次的复合替换中,反引号须要转义处理,而 $( ) 则比较直观。例如:`com1`com2`` 这么写就是错的。需要`com1/`com2/``如果有多个命令嵌套就比较复杂了。而用$()就比较直观比如$(com1$(com2$(com3)))

2016-08-11 11:08:26 267

转载 libevent之Reactor模式详解

前面讲到,整个libevent本身就是一个Reactor,因此本节将专门对Reactor模式进行必要的介绍,并列出libevnet中的几个重要组件和Reactor的对应关系,在后面的章节中可能还会提到本节介绍的基本概念。1 Reactor的事件处理机制首先来回想一下普通函数调用的机制:程序调用某函数?函数执行,程序等待?函数将结果和控制权返回给程序?程序继续处理。Reactor

2016-08-10 22:52:23 2180

原创 软件测试之因果图

1.某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。

2016-08-10 14:59:07 14451

原创 模块测试

模块测试的目的是保证每个模块作为一个单元能正确运行,所以模块测试通常又被称为单元测试。在这个测试步骤中所发现的往往是编码和详细设计的错误。驱动模块:驱动模块是用来模拟被测试模块的上一级模块,相当于被测模块的主程序。它接收数据,将相关数据传送给被测模块,启用被测模块,并打印出相应的结果。举例来说:驱动模块(Driver)可以通过模拟一系列用户操作行为,比如选择用户界面上的某一个选项或者按下某个按

2016-08-09 23:04:44 10355

转载 TCP长连接与短连接的区别

转自:http://www.cnblogs.com/liuyong/archive/2011/07/01/2095487.html1. TCP连接当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以说每个连接的建立都

2016-08-08 16:06:26 280

转载 linux中安装gcc和g++

转自:http://www.cnblogs.com/myw31415926/archive/2013/03/13/myw31415926.htm  今天在linux的服务器上安装C/C++的编译器gcc和g++,运行了如下两条命令:  1 yum install gcc  2 yum install g++  然后发现gcc可以正确安装,但安装g++时却提示: Can

2016-08-07 18:54:51 511

转载 HTTP中GET和POST本质详解

转自http://blog.csdn.net/gideal_wang/article/details/4316691一 原理区别    一般在浏览器中输入网址访问资源都是通过GET方式;在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETEURL全

2016-08-04 23:24:51 385

转载 多进程和多线程的区别

转自:http://blog.csdn.net/hairetz/article/details/4281931/很想写点关于多进程和多线程的东西,我确实很爱他们。但是每每想动手写点关于他们的东西,却总是求全心理作祟,始终动不了手。今天终于下了决心,写点东西,以后可以再修修补补也无妨。 一.为何需要多进程(或者多线程),为何需要并发?这个问题或许本身都不是个问题。但是对于

2016-08-02 23:23:44 266

转载 Reactor模式详解

转自http://www.blogjava.net/DLevin/archive/2015/09/02/427045.html前记第一次听到Reactor模式是三年前的某个晚上,一个室友突然跑过来问我什么是Reactor模式?我上网查了一下,很多人都是给出NIO中的 Selector的例子,而且就是NIO里Selector多路复用模型,只是给它起了一个比较fancy的名字而已,虽然它引

2016-08-02 12:55:37 1059

转载 TCP协议中的三次握手和四次挥手

转自http://blog.csdn.net/whuslei/article/details/6667471建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示:先来看看如何建立连接的。首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server

2016-08-02 10:06:24 180

转载 TCP连接建立过程中为什么需要“三次握手”

转自http://www.cnblogs.com/TechZi/archive/2011/10/18/2216751.html传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的、基于字节流的运输层(Transport layer)通信协议。是专门为了在不可靠的互联网络上提供一个可靠的端到端字节流而设计的。互联网络与单个网络

2016-08-02 09:53:00 461

转载 HTTP协议详解

引言                                         HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系 统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作 正在进行之中,而且HTTP-NG(Next Generation

2016-07-31 11:29:25 301

原创 I/O多路转接之epoll

epoll的工作原理:epoll把用户关心的文件描述符上的事件放在内核的一张事件表里,所以不用像select那样,每次都要重复传入文件描述符。但epoll需要一个文件描述符来唯一标识内核中的这个事件表。这个文件描述符用函数epoll_create()来创建。epoll_wait()函数在一段时间内等待文件描述符中的事件,成功返回就绪事件的个数,失败返回-1。epoll_ctl()函数用

2016-07-31 11:23:22 246

转载 epoll详解

转自:http://blog.chinaunix.net/uid-24517549-id-4051156.html什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel

2016-07-31 09:08:32 173

原创 STL源码剖析(四)---空间配置器

系统已经提供了动态分配内存的接口,malloc(),new(),为什么需要空间配置器?空间配置器的存在是为了解决容器申请内存时产生的内存碎片问题。举一个例子:

2016-07-30 22:45:21 402

原创 I/O多路转接之select

系统提供select函数来实现多路复用输入/输出模型。传向select的参数告诉内核:1)我们所关心的文件描述符。2)对每个描述符,我们所关心的状态。(我们是要想从一个文件描述符中读或者写,还是关注一个描述符中是否出现异常)3)我们要等待多长时间。(我们可以等待无限长的时间,等待固定的一段时间,或者根本就不等待)从 select函数返回后,内核告诉我们以下信息:1)

2016-07-29 21:48:38 307

原创 Linux下的五种I/O模型

Linux下共有五种I/O模型。阻塞I/O,非阻塞I/O,I/O复用(select和(e)poll),信号驱动I/O(SIGIO),异步I/O

2016-07-27 12:09:23 401

原创 STL源码剖析(三)---迭代器

迭代器是STL中提供的对容器中对象的访问方法。它就像指针,可以用*运算符获取数据,可以使用++,--对迭代器进行操作。迭代器的范围可以由begin()和end()这两个函数获得,begin()返回指向容器中的第一个元素的迭代器,end()返回指向容器的最后一个元素的下一个位置的迭代器。迭代器是如何访问到容器中的数据呢?在list中,定义了一个名字是__list__iterator的结构

2016-07-26 21:02:43 503

转载 C语言中野指针与内存泄漏

内存泄漏 用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元,不能被任何程序再次使用,直到程序结束。即所谓内存泄漏。   注意:内存泄漏是指堆内存的泄漏。 简单的说就是申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,且没有任何一个指针指向它,那么这

2016-07-25 20:46:57 715

转载 C++中隐式转换和显示转换

转自:http://www.cnblogs.com/joinclear/p/3850076.html0前言 1)C++的类型转换分为两种,一种为隐式转换,另一种为显式转换。 2)C++中应该尽量不要使用转换,尽量使用显式转换来代替隐式转换。1隐式转换定义:隐式转换是系统跟据程序的需要而自动转换的。1)C++类型(char,int,float,

2016-07-25 20:24:30 1190

原创 基于TCP的socket编程

server端:client 端:一个server在和两个client聊天~~~步骤:server端  1)调用socket(),创建套接字,返回值是文件描述符。                       2)调用bind(),绑定ip和端口号。                       3)调用listen(),监听等待连接状态的客

2016-07-25 16:55:32 349

原创 STL源码剖析笔记(二)---容器

容器,其实也就是数据结构,我们学过的数据有array(数组),list(链表),stack(栈),set(集合),tree(树) ··· 这些数据结构分为序列式和关联式,所以容器就分为序列式和关联式。序列式容器 vector 它的数据结构是一个线性的连续空间,就像顺序表,其中有两个迭代器start和finish分别指向已使用空间的首部和尾部,迭代器end_of_storage指向分配的连续空间的

2016-07-24 09:27:10 235

原创 STL剖析笔记(一)---概述

STL有很多版本,我剖析的是SGI版本,参考侯捷的《STL源码剖析》 首先是它的整体结构吧 STL有六大组件: 1)容器:各种数据结构(vector,list,map,set等) 2)迭代器:可以操纵数据的接口,有点像指针 3)空间配置器:负责内存空间的管理 4)配接器:一种修饰容器或者仿函数或者迭代器接口的东西 5)算法:各种常见的算法(sort,find等) 6)仿函数:行为类似函

2016-07-23 18:37:28 276

转载 值得学习的C/C++开源项目

转自http://ezlippi.com/blog/2014/12/c-open-project.html值得学习的C语言开源项目Libeventlibev是一个开源的事件驱动库,基于epoll,kqueue等OS提供的基础设施。其以高效出名,它可以将IO事件,定时器,和信号统一起来,统一放在事件处理这一套框架下处理。基于Reactor模式,效率较高,并且代码精简(4.

2016-07-23 11:44:31 13736 1

空空如也

空空如也

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

TA关注的人

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