自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 tcp 连接的11种状态–转载

 一、Linux服务器上11种网络连接状态图:TCP的状态机通常情况下:一个正常的TCP连接,都会有三个阶段:1、TCP三次握手;2、数据传送;3、TCP四次挥手注:以下说明最好能结合”图:TCP的状态机”来理解。SYN:(同步序列编号,Synchronize Sequence Numbers)该标志仅在三次握手建立TCP连接时有效。表示一个新的TCP连...

2011-03-25 16:42:07 165

原创 关于socket心跳的实现

目前手头有个关于心博功能的一个案例, 在使用SOL_SOCKET, SO_KEEPALIVE上有一点心得,想写出来和大家分享一下。关于SOL_SOCKET选项SO_KEEPALIVE有一个很详细的英文How TO, 在下面的网页中大家可以看到详细的内容http://www.icewalkers.com/Linux/Howto/TCP-Keepalive-HOWTO/index.html...

2011-03-25 16:35:04 72

原创 socket 心跳

如果自己去实现心跳功能其实最土的办法是隔一定时间向服务端发送一个心跳包,然后服务端如果收到了,服务端就发送一个响应信号,如果客户端在一定的时间间隔内取得了这个响应,那么连接是正常的,如果没有取得,那么重连这个socket.我想如果JDK已经实现了这个功能的话,那我就没必要自己再去造轮子了。参考了一下网上的资料,说是socket.setKeepAlive(true)就实现了心跳包的发送功能,我不知道...

2011-03-25 15:53:55 116

原创 EventObject所能带来的好处

引用 3 楼 zhouyongyang621 的回复:引用 2 楼 thinke365 的回复: 引用 1 楼 qiushyfm 的回复: EventObject类是所有事件象的基础类,所有的事件类都是由它派生出来的。 它实现了Serializalbe接口 ,因此所有的事件都可以被串行化。 EventObject类中还提供getSource()方法来确定引发事件的源对象。 事件可串行化,...

2011-03-25 11:58:47 202

原创 SOCKS 4协议中文文档意译版

SOCKS协议最初由David Koblas设计,后经Ying-Da Lee改进成SOCKS 4协议。SOCKS4协议主要是如下几个RFChttp://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4.protocolhttp://www.rfc-editor.org/rfc/rfc1928.txthttp://www.smartftp.com/Pro...

2011-03-25 11:38:55 514

原创 SOCKS 5协议详解

笔者在实际学习中,由于在有些软件用到了socks5(如oicq,icq等),对其原理不甚了解,相信很多朋友对其也不是很了解,于是仔细研读了一下rfc1928,觉得有必要译出来供大家参考。1.介绍:  防火墙的使用,有效的隔离了机构的内部网络和外部网络,这种类型的Internet架构变得越来越流行。这些防火墙系统大都充当着网络之间的应用层网关的角色,通常提供经过控制的Telnet,FTP...

2011-03-25 11:36:27 984

原创 apn

APN的英文全称是Access Point Name,中文全称叫接入点,是您在通过手机上网时必须配置的一个参数,它决定了您的手机通过哪种接入方式来访问网络。基本概念APN(Access Point Name),即“接入点名称”,用来标识GPRS的业务种类,目前分为两大类:CMWAP(通过GPRS访问WAP业务)、CMNET(除了WAP以外的服务目前都用C...

2011-03-24 19:29:37 108

原创 使用Cygwin下载Android代码树

--官方说明--To set up your Linux development environment, make sure you have the following:●Required Packages: Git 1.5.4 or newer and the GNU Privacy Guard.JDK 5.0, update 12 or higher. Java 6 is ...

2011-03-16 20:45:47 70

原创 Cygwin在win下下载android源代码

首先下载cygwin,cygwin是一个类linux平台。即在windows环境下模拟linux终端。比起运行linux虚拟机,是一个轻量 的解决办法。除了本文用来下载android源码,你当然可以用它来学习linux。cygwin的中文网是http://www.cygwin.cn /,建议从这下载cygwin,这是国内最快的镜像站点。严格按网站的说明安装:http://www.cygwin.cn...

2011-03-16 20:43:41 93

原创 Android NDK 环境搭建 - 安装配置 Cygwin

1. NDK 下载 最新版 Android NDK 开发工具包  地址:http://dl.google.com/android/ndk/android-ndk-r4-windows.zip2.交叉编译环境下载 Cygwin ,并安装。 我们通过Cygwin编译一个交叉环境。地址:http://www.cygwin.com/ 选择 Devel Install 安装 gcc 和 make 等工具。 ...

2011-03-16 20:40:58 64

原创 Java 学习笔记之 ByteBuffer

在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.1.创...

2011-03-15 15:54:42 58

原创 Android-触感反馈和声音反馈的效果实现

1)只有系统设置中打开触感反馈选项,方法performHapticFeedback(int feedbackConstant)才会被执行,而performHapticFeedback(feedbackConstant,flags)有些特殊,比如:HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING忽略全局设置(开启与否)或是在开启全局设置下H...

2011-03-15 12:07:47 853

原创 Apache MINA 介绍,什么是Apache MINA

1。MINA 框架简介下图为本人根据对MINA的简要理解,所画出来的框架简图:当客户首次访问采用MINA编写的程序时,IoAcceptor作为线程运行,负责接受来自客户的请求。当有客户请求连接时,创建一个Session,该Session与IoProcessor、SocketChannel以及IOService联系起来。IoProcessor也作为另外一个线程运行,定时检查(轮询...

2011-03-13 23:41:56 147

原创 通过观察者模式和Reactor模式深入理解JAVA NIO 线程

Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设线程,让线程去等待,但是这样做也是相当耗费资源(传统socket通讯服务器设计模式)的。Ja...

2011-03-13 23:40:57 96

原创 大道至简Java23种模式

一、创建型模式  FACTORY模式    人才市场:以往是要哪个人才,就找哪个人才,效率低,现在有了人才市场,我们只需直接去人才市场挑一个好了;   BUILDER模式    生产流水线:以前是手工业作坊式的人工单个单个的生产零件然后一步一步组装做,好比有了工业革命,现在都由生产流水线代替了。如要造丰田汽车,先制定汽车的构造如由车胎、方向盘、发动机组成。再以此构造标准生产...

2011-03-10 11:55:11 104

原创 Prototype原型模式

1.为什么需要Prototype模式?  引入原型模式的本质在于利用已有的一个原型对象,快速的生成和原型对象一样的实例。你有一个A的实例a:A a = new A();现在你想生成和a一样的一个实例b,按照原型模式,应该是这样:A b = a.Clone();而不是重新再new一个A对象。通过上面这句话就可以得到一个和a一样的实例,确切的说,应该是它们的数据成员是一样的。Prototype模式...

2011-03-10 11:53:53 63

原创 Builder模式

发现自己对于设计模式的理解果然比原来好了很多,这可能是因为用Java来实现设计模式更为贴切和易理解的原因吧。在写这些系列文章时,俺当然参考了网上其它前辈们的源码,对俺最有帮助的就是那本Design Patter In Java,写得很不错,但可惜,里面的例子,俺还是觉得有点复杂。按我的想法,既然设计模式这么难学,所以,刚开始时,对于设计模式的应用,我们只要尽量抓住每个模式最本质的地方,并力求代...

2011-03-10 11:52:39 83

原创 LWUIT精简解说21条[转]

Sun发布了LWUIT(Light-Weight UI Toolkit)的源代码以及示例代码。项目主页访问:https://lwuit.dev.java.net/  The Lightweight UI Toolkit (LWUIT) 是一个轻量级JavaME UI工具包。LWUIT类似Swing 的MVC架构, 支持多种布局(Layouts), 皮肤更换, 字体, 触摸屏, 动画效果, ...

2011-03-10 11:51:49 116

原创 socket的服务端框架

最近查了不少java下面nio的非阻碍性的连接,也可称之为高性能连接,转发一下这片内容.  1 QuickServer   QuickServer则同时支持blockingIO和nio,需要进行配置选择,QuickServer提供了另外一个非常实用的功能-管理服务端口,通过其设定的一些指令查询服务器的状态、控制服务器等。此功能成为最后选择的最大优势。其他例如IP过滤的功能在QuickServer中...

2011-03-07 14:17:21 330

原创 EventObject所能带来的好处

开发者经常要基于Observer模式创建事件监听系统(Event-Listener systems),但是他们也应该记得EventObject类。Observer模式在Java中是非常成功的。Java中的GUI系统(The graphical user interface systems)AWT和Swing,再加上那些使用事件和监听器的地方,都是建立在Observer模式上的。另外,在java.u...

2011-03-07 10:10:38 1424

原创 android UI 优化系列之 创建RGB565的缓存

关于如何优化activity的启动速度, view 的绘制速度, 可参考这个sdk里的文档。 android-sdk-windows-1.5_r1/docs/resources/articles/window-bg-speed.html。看完后你就知道 android:windowBackground 太重要了,影响到绘制效率。这里要说的是另外一点, 不是这个windowBackground ...

2011-03-05 16:42:26 164

原创 SocketChannel 和 DatagramChannel

SocketChannel  叫套接字通道,面向流,就是通常的TCPread,write 前必须建立连接,线程安全,任意时刻只能有一个线程进行读取和写入DatagramChannel 叫数据报通道,面向数据报,就是通常的UDPsend,receive 前无需建立连接,read,write前必须建立连接,线程安全,任意时刻只能有一个线程进行读取和写入...

2011-03-05 16:19:19 329

原创 Android 调试工具集

1.TraceView1)功能:用于热点分析和性能优化,分析每个函数占用的CPU时间,调用次数,函数调用关系等 2)方法:  a)在程序代码中加入追踪开关  import android.os.Debug;  ……  android.os.Debug.startMethodTracing(“/data/tmp/test”);// 先建/data/tmp目录  ...

2011-03-05 13:25:29 59

原创 Android 中文API (33) —— Checkable

声明  欢迎转载,但请保留文章原始出处:)    博客园:http://www.cnblogs.com/    Android中文翻译组:http://www.cnblogs.com/over140/   正文  一、结构    public interface Checkable     间接子类CheckBox, CheckedTextView, C...

2011-03-03 17:45:12 166

原创 Toast 和 Looper

Toast 和 Looper,一个属于 android.widget,一个属于 android.os,两个貌似联系不怎么紧密的类,却通过下面这个异常联系到了一起:E/AndroidRuntime( 1819): java.lang.RuntimeException: Can't create handler inside thread that has not called Loo...

2011-03-03 09:02:11 197

原创 Activity 与 Main Loope

上文抛出了一个疑问:UI 线程是在哪里绑定 Looper 呢?欲解此题,仍旧从 Android 源码着手,但是 Android 的代码量是以 GB 为单位来计算的,若是一个一个来看,只见树木不见森林,未必能理出个头绪。不妨通过 Eclipse 这一工具,设置 breakpoint,进入 debug,看一看执行流程。新建一 Android Project,创建简单的 Activity 类,在...

2011-03-03 08:59:51 181

原创 Class loading in Android : Begin with PathClassLoader

Google 在 Android 文档里的《What is Android》章节中,明确提出:The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language....

2011-03-03 08:56:45 82

原创 Linux x86 编译 Android 遭遇 gnu/stubs-64.h

这两天心血来潮,执行完 repo sync 后,顺手来了一下 make,不料却发现了以下的错误:host C: libclearsilver-jni <= external/clearsilver/java-jni/j_neo_util.cIn file included from /usr/include/features.h:378, ...

2011-03-03 08:54:15 162

原创 读《Multitasking the Android Way》(一)

Android Developers Blog 发表了一篇题为《Multitasking the Android Way》的博文,读起来颇为有趣。我将博文中的关键信息加以自己的理解,简单整理成以下文字,以便日后查阅之便。能力有限,误读和错读难以避免,阅读者应该坚持怀疑的态度来阅读本文,尽信书不如无书。同时运行多个应用程序,即 Multitask,对于现在的 OS 来说,是个稀松平常的事情,...

2011-03-03 08:50:40 83

原创 从 Remote Service Binding 学习 AIDL 与 IPC

默认情况下,一个应用不管有多少个 Activity、Service 或其他组件,它们都是运行在一个进程上,但是我们可以安排 Service 运行一个新的进程上,但是不同进程之间应该如何通信呢?当需要在不同的进程之间传递对象时,应该怎么做呢?AIDL(Android Interface Definition Language) 便是解决这一问题的钥匙。使用 AIDL 并不是难事,但是比较繁琐...

2011-03-03 08:47:30 81

原创 Android SDK Add-on Configure, Compile and Release

SDK Add-on 是一个比较小众的话题,一是通常厂商不会公开自己的add-on,二是即便公开了,应用开发者也很少使用。所以通常是厂商自己的技术团队自娱自乐,框架团队抽取公用的控件,制成一个 add-on,然后公布给自家的应用程序开发团队。由于是小众的,所以网络中关于这方面的资料比较少。这几天由于工作原因,我有幸接触到 Add-on,因此把这方面的知识进行了汇总,整理成如下内容。这些知识...

2011-03-03 08:44:50 123

原创 Activity Task 与 Intent Filter Flag

接触 Android 以来,一直觉得对 task、affinity 和 launch mode 一知半解,这几天潜心阅读 Dev Guide 中的Activities and Tasks,简单做下笔记,梳理下这部分的知识。Android 的一个特色就是 application A 的 activity 可以启动 application B 的 activity,尽管 A 和 B 是毫无干系...

2011-03-03 08:42:36 88

原创 深入理解Linux内存映射机制

一. 绪 论我们经常在程序的反汇编代码中看到一些类似0x32118965这样的地址,操作系统中称为线性地址,或虚拟地址。虚拟地址有什么用?虚拟地址又是如何转换为物理内存地址的呢?本章将对此作一个简要阐述。1.1 Linux内存寻址概述现代意义上的操作系统都处于32位保护模式下。每个进程一般都能寻址4G的物理空间。但是我们的物理内存一般都是几百M,进程怎么能获得4G的物理空间呢?这就是使用了虚...

2011-03-02 16:08:29 210

原创 android的原理,不需要太多的剩余内存

不用在意剩余内存的大小。其实很多人都是把使用其他系统的习惯带过来来了。android大多应用没有退出的设计其实是有道理的,这和系统对进程的调度机制有关系。如果你知道java,就能更清楚这机制了。其实和java的垃圾回收机制类似,系统有一个规则来回收内存。进行内存调度有个阀值,只有低于这个值系统才会按一个列表来关闭用户不需要的东西。当然这个值默认设置得很小,所以你会看到内存老在很少的数值徘徊。但事实...

2011-03-02 16:05:32 74

原创 Android IPC框架分析 Binder,Service,Service manager

我首先从宏观的角度观察Binder,Service,Service Manager,并阐述各自的概念。从Linux的概念空间中,Android的设计Activity托管在不同的的进程,Service也都是托管在不同的进程,不同进程间的Activity,Service之间要交换数据属于IPC。Binder就是为了Activity通讯而设计的一个轻量级的IPC框架。  在代码分析中,我发现An...

2011-03-02 15:19:32 76

原创 ARM Cortex A8

 ARM Cortex A8并不能说是电脑意义上的核心数 , 而是指里面充当主角的ARM Cortex-A8、IVA2+、POWERVR SGX Graphics Core、Image Signal Processor(ISP)四个处理核心 , 各自都发挥着很大作用 , 比如说  IVA2+图像、视频、音频加速器 、 SGX图形内核 、集成的图像信号处理器Image Signal Proces...

2011-03-01 17:10:33 256

JavaScript凌厉开发-Ext详解与实践(光盘)源码清单-补充环境

JavaScript凌厉开发-Ext详解与实践(光盘)源码清单-补充环境

2009-11-26

Javascript凌厉开发 Ext详解与实践 第六章的补充的代码

Javascript凌厉开发 Ext详解与实践,此书的勘误,缺少的代码

2009-11-26

空空如也

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

TA关注的人

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