自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (2)
  • 收藏
  • 关注

原创 HTML5 AppCache机制分析

随着移动互联网越来越普及,

2014-06-16 18:25:11 16472

原创 UIActionSheet关闭动画过程中调用delegate = nil 导致的内存泄露

UIActionSheet在动画期间(ActionSheet button点击之后,到didDismissWithButtonIndex调用完成之前)设置delegate为空会导致delegate无法释放。先来看个例子:例子中创建一个UIActionSheet,并在按钮点击之后0.1秒(关闭动画结束前)设置delegate = nil。#import "LIViewController

2014-06-11 23:41:49 2187

原创 iOS exit函数深入浅出

C,C++函数exit用来终止当前程序,

2014-06-05 09:09:11 6196

原创 深入浅出C++11(7)-- 类型推导

在标准 C++(和 C ),使用参数必须明确的指出其类型。然而,随着模版类型的出现以及模板元编程的技巧,某物的类型,特别是函数定义明确的返回类型,就不容易表示。在这样的情况下,将中间结果存储于参数是件困难的事,可能会需要知道特定的元编程程序库的内部情况。C++11 提供两种方法缓解上述所遇到的困难。首先,有被明确初始化的参数可以使用 auto 关键字。这会依据该初始化子(ini

2013-10-06 15:33:04 2446

原创 深入浅出C++11(6)-- 外部模板

为什么需要外部模板先来看一个例子://fun.htemplate void fun(T t){}//use1.cppvoid test1(){ fun(1);}//use2.cppvoid test2(){ fun(1);}fun.h定义了模版函数fun, 在use1.cpp和use2.cpp中都使用了该模版函数,在编译这两个cpp文件时需要分别实例化,

2013-10-05 19:40:47 5787

原创 深入浅出C++11(5)-- Lambda函数与表示式

先来看个例子:

2013-10-05 15:59:44 1462

原创 深入浅出C++11(4)-- 泛化的常数表示式

C++ 规格要求使用常数表示式, 数组大小的定义上,以及枚举值(enumerator values)都要求必须是常数表示式:int getCount(){    return 5;}const int count1 = 5;const int count3 = getCount();int count2 = 5;int a1[5];int a2[coun

2013-10-05 10:23:20 2296

原创 深入浅出C++11(3) -- 右值引用和move语义

右值引用什么是lvalue, 什么是rvalue?lvalue: 具有存储性质的对象,即lvalue对象,是指要实际占用内存空间、有内存地址的那些实体对象,例如:变量(variables)、函数、函数指针等。rvalue:相比较于lvalue就是所谓的没有存储性质的对象, 也就是临时对象。也可以这样理解: lvalue: 通过它能够找到内存中存放的变量(lo

2013-10-04 20:49:03 8899 3

原创 深入浅出C++11(2) -- C++核心语言的扩充

C++核心语言的扩充C++委员会的主要焦点是在语言核心的发展上。核心语言将被大幅改善的领域包括多线程(或称为“多线程”)支持、泛型编程、统一的初始化,以及性能表现的加强。在此分成4个区块来讨论核心语言的特色以及变更: 运行期表现强化、建构期表现强化、可用性强化,还有新的功能。某些特色可能会同时属于多个区块,但在此仅于其最具代表性的区块描述该特色。核心语言的运行期表现强化

2013-10-04 15:27:27 1423

原创 深入浅出C++11(1)

C++标准C++真正正式公布的标准就三个:C++98: 第一个正式C++标准;C++03: 在C++98上面进行了小幅度的修订;C++11: 一次全面的大进化(之前称C++11为C++0x,以为会在08~09年公布,没想到拖到了11年)。注1: 其实C++在第一个标准C++98之前就已经广为使用了。只不过那时候还没有一个官方的统一标准,后来才开始起草标准草案,

2013-10-04 15:12:47 1589

转载 【转】如何调试跟踪Android源代码

Android 调试

2010-12-09 17:26:00 576

转载 如何调试跟踪Android源代码

android 调试

2010-12-09 17:23:00 483

转载 Android 调试桥(adb)

abdroid adb

2010-12-09 17:16:00 724

转载 动态库优化——Prelink(预连接)技术

Prelink

2010-12-09 17:02:00 862

转载 Android GWES之Android窗口治理(转)

Android Window WindowManager WindowManagerServer View

2010-12-09 14:58:00 626

转载 adb的介绍

adb android

2010-12-06 21:23:00 1819

转载 Android IPC机制详解

android binder

2010-12-06 09:38:00 961

转载 MeeGo架构层和API视图

MeeGo的系统架构可以以下3种视角来了解: 层级视角   它展示了不同层与用户体验的垂直分离 域视角   它显示了在技术和功能相似性基础上的各架构域中的多组子系统 API视角   它展示了各个功能区域中MeeGo API的分组 抽象层使MeeGo可以独立于硬件 层级视图 层级视图包括3个层:用户体验(UX)、应用API和核心操作系统层 用户体验层包含了用户体验的纵向。           它提供了多平台用户体验参考。MeeGo

2010-12-05 13:38:00 1067

转载 MeeGo体系结构

博主注释:下面那张结构图是理想图,但是现在情况是很多功能还不具有,中间层的内容大部分没有实现,MEEGO API层其实就是QT API,其他功能还在开发中,总之MEEGO的现实开发情况是不理想中的那样。 MeeGo平台精心设计所有必要模块,是为了给设备使用者最好的用户体验。正如以下MeeGo架构综述图所表现的,MeeGo系统主要分成三个部分: MeeGo操作系统底层 包含linux核心服务组件以及支持不同硬件架构的硬件自适应层。 MeeGo操作系统中间件层 提供硬件和独立的API使用模型用

2010-12-05 13:28:00 1062

转载 Android display架构分析

<br />http://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html<br />http://hi.baidu.com/leowenj/home<br /> 

2010-12-03 10:54:00 603

原创 android实现一个service

android service

2010-12-03 10:19:00 1340

转载 Android ProcessState

Android ProcessState

2010-12-03 10:15:00 1608

转载 Android的IPC机制Binder的详解汇总

Android的IPC机制Binder的详解汇总

2010-12-02 17:44:00 800

转载 Android的电源管理

Android的电源管理

2010-12-02 17:25:00 794

转载 Android多媒体框架初步分析

Android多媒体框架初步分析

2010-12-02 17:22:00 604

转载 Android内核介绍

Android内核介绍

2010-12-02 11:22:00 997

转载 编译android的linux内核

编译android的linux内核

2010-12-02 11:04:00 646

原创 socket相关的函数I/O模型

[本文内容主要来源: UNIX Network Programming Volume.1 by W. Richard Stevens] 首先我们来看几个socket相关的函数I/O模型1. Blocking I/O 模型这个模型是最普通和常见的, 以recvfrom为例. 这个函数在返回之前有两个过程 1). 等待数据到来.2). 从内核空间copy数据到用户空间.用图表示就是这样

2009-04-16 14:12:00 1847

原创 STUN, STUNT, XSTUNT

STUN (From: http://zh.wikipedia.org/w/index.php?title=STUN&variant=zh-cn) STUN(Simple Traversal of User Datagram Protocol through Network Address Translators (NATs),NAT的UDP简单穿越)是一种网络协议,它允许位于NAT(

2009-04-14 09:19:00 4156 5

原创 winpcap发送数据包模拟TCP连接和断开的7次握手

 上次我用winpcap成功发送一个UDP数据包到服务器。 相比较TCP要复杂的多, tcp不但要完成开始连接的三次握手, 还要处理数据包的序列号。 下面是tcp七次握手示意图:      下面我就来模拟一个TCP客服端,发送一个连接到服务器, 服务器之后断开。这样就是7次握手, 不含其他数据包。 首先我们做一个tcp服务器, 最好是一个公网的, 这样连接就

2009-04-11 11:20:00 9093 4

原创 用winpcap发送UDP数据包

今天尝试用winpcap提供的pcap_sendpacket函数成功发送一个udp数据包到目的地址。 下面就来回顾一下过程。 首先用pcap_findalldevs得到网络接口,比如在我的机器上得到这样的结果:1: /Device/NPF_GenericDialupAdapter2: /Device/NPF_{06864041-9387-44DC-AF44-37779B0F2E9E}

2009-04-08 20:35:00 14394 6

原创 Boost库中的Traits(is_float, is_class)

 对以判断是不是某个基本类型(整数, 浮点, bool)可以参考下面代码:3. is_floattemplatestruct is_float : bool_type{};#define IS_FLOAT(T) template : bool_type{};/ template : bool_type{};/ template : bool_type{};/ te

2009-03-21 21:55:00 2019

原创 Boost库中的Traits(is_array, is_const)

Boost中的Traits十分完善,可分为几大类:1. Primary Type Categorisation(初级型别分类) 2. Secondary Type Categorisation(次级型别分类) 3. Type Properties(型别属性) 4. Relationships Between Types(型别间关系) 5. Transformations Bet

2009-03-21 20:48:00 1531

原创 让CPU画正弦曲线

 #include #include #include using namespace std;//得到循环0xFFFFFFFF次用的秒数unsigned int test(){ unsigned int c = 0xFFFFFFFF; time_t t1, t2; time(&t1); for(unsigned int i = 0; i <

2009-03-16 15:11:00 726

原创 cdecl

 #include#define R const char#define Y template#define X operator R*(){#define O return n;}};#define N(t) template::n=#t;#define W(M,S) Y struct C{X static char n[512];strcpy(n,S);strcat(n

2009-03-11 13:54:00 522

原创 一个简单模拟内存分配和释放的实现

  #include #include #define PAGEINTSIZE 1024 #define PAGESIZE 4096 struct Page { char mm[PAGESIZE]; bool Initial(unsigned int size) {

2009-03-02 16:03:00 1326 1

原创 原始套接口(RAW SOCKET)

原始套接口(RAW SOCKET) 原始套接口提供三种TCP和UDP套接口不提供的功能:1). 可以读写ICMPv4, IGMPv4和ICMPv6分组. 例如Ping和Traceroute程序就是利用ICMP分组2). 可以读写特殊的IPv4数据报, 内核不处理这些数据报IPv4协议字段3). 使用IP_HDRINCL选项可以构造自己IPv4头部. 可以用这个特性来构造自己的T

2009-02-20 15:05:00 4205

原创 vi文字处理

vi共分为3种模式:1). 一般模式2). 编辑模式3).  命令行命令模式  命令行的命令 一般模式:移动光标的方法h或向左方向键(←)光标向左移动一个字符j或向下方向键(↓)光标向下移动一个字符k或向上方向键(↑)光标向上移动一个字符

2009-02-18 12:19:00 806

原创 linux设备

在Linux系统中,存在一个抽象化的设备目录,名为/dev,如图所示。该目录下存有指向系统中硬件的特殊文件。这些指向硬件设备的文件,极大地简化了程序员对硬件的操作。Linux系统将设备分成了3种类型:1). 字符设备: 字符设备就是能够像字节流一样访问的设备,字符终端和串口就属于字符设备。2). 设备: 与字符设备不同,在读写操作时,块设备每次只能传输一个或多个完整的块。3).

2009-02-18 09:52:00 1144

转载 GCC编译器介绍

GCC编译器介绍GCC是GNU项目的编译器组件之一,也是GNU最具有代表性的作品。在GCC设计之初仅仅作为一个C语言的编译器,可是经过十多年的发展,GCC已经不仅仅能支持C语言;它现在还支持Ada语言、C++语言、Java语言、Objective C语言,Pascal语言、COBOL语言,以及支持函数式编程和逻辑编程的Mercury语言,等等。而GCC也不再单是GNU C Compiler的意

2009-02-17 17:46:00 9934

深入理解Linux内核.pdf

深入理解Linux内核. 不错, 中文影印版

2008-12-13

空空如也

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

TA关注的人

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