- 博客(90)
- 资源 (5)
- 收藏
- 关注
转载 Android网络优化之HttpClient
尽管Android官网推荐在2.3及后续版本中使用HttpURLConnection作为网络开发首选类,但在连接管理和线程安全方面,HttpClient还是具有很大优势。就目前而言,HttpClient仍是一个值得考虑的选择。对于HttpClient的优化,可以从以下几个方面着手: (1)采用单例模式(重用HttpClient实例) 对于一个通信单元甚至是整个应用程序,
2016-09-29 11:59:36 303
转载 Android之绚丽的图片游览效果
这里转载一个牛人的博客:http://www.cnblogs.com/tankaixiong/archive/2011/02/24/1964340.html 下面,是我参照他的博客实现的一个效果图。这个程序,在他的基础上进行了一些改良,但改良得不是很好,嘻嘻,等有空,继续研究。该实例下载路径:http://download.csdn.net/source/3275783
2016-09-20 08:53:28 758
转载 Android 利用ListView制作带竖线的多彩表格
/******************************************************************************************** * author:conowen@大钟
2016-09-20 08:48:52 467
转载 Android开发常用工具类之File操作
在开发Android应用时免不了会跟文件打交道,本篇博文记录总结自己常用到的文件操作代码片段,会不定期总结更新。删除文件递归法清除文件该方法会删除文件以及文件夹下的子文件,类似与linux下的rm -r效果public static boolean deleteRecursively(final File path) { if (path.isDirectory
2016-09-17 21:53:38 356
转载 Android开发常用工具类之图像处理
生成圆形的Bitmap传入任意形状的bitmap,输出圆形Bitmap供显示public Bitmap createCircularBitmap(Bitmap input, int width, int height) { if (input == null) return null; final int inWidth = i
2016-09-17 21:53:09 547
转载 Android内存泄漏案例分析一
背景介绍最近负责的Gallery模块测试时频繁报出使用一段时间后就发生Crash,通过Log查看发现是OOM引发,本篇文档记录解决该问题的分析过程。Log分析该OOM问题测试没有找到复现步骤,只是报出使用一段时间就会发生OOM这个非常宽泛的现象,没有复现步骤,没有确定时间节点。查看Log每次发生OOM的代码调用栈也不尽相同。贴出出现OOM的几段Log。
2016-09-17 21:50:22 326
转载 【Java集合源码剖析】LinkedHashmap源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/37867985 前言:有网友建议分析下LinkedHashMap的源码,于是花了一晚上时间研究了下,分享出此文(这个系列的最后一篇博文了),希望大家相互学习。LinkedHashMap的源码理解起来也不难(当然,要建立在对HashMap源码有较好理解的基础上)。
2016-09-17 00:56:40 263
转载 【Java集合源码剖析】TreeMap源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/36421085前言 本文不打算延续前几篇的风格(对所有的源码加入注释),因为要理解透TreeMap的所有源码,对博主来说,确实需要耗费大量的时间和经历,目前看来不大可能有这么多时间的投入,故这里意在通过于阅读源码对TreeMap有个宏观上的把握,并就其中一些
2016-09-17 00:55:41 233
转载 【Java集合源码剖析】Hashtable源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/36191279Hashtable简介 Hashtable同样是基于哈希表实现的,同样每个元素是一个key-value对,其内部也是通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 Hashtable也是JDK1.0引入的类,是
2016-09-17 00:54:38 205
转载 【Java集合源码剖析】HashMap源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/36034955HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下
2016-09-17 00:53:31 272
转载 【Java集合源码剖析】Vector源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/35793865Vector简介 Vector也是基于数组实现的,是一个动态数组,其容量能自动增长。 Vector是JDK1.0引入了,它的很多实现方法都加入了同步语句,因此是线程安全的(其实也只是相对安全,有些时候还是要加入同步
2016-09-17 00:52:22 558
转载 【Java集合源码剖析】LinkedList源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/35787253您好,我正在参加CSDN博文大赛,如果您喜欢我的文章,希望您能帮我投一票,谢谢!投票地址:http://vote.blog.csdn.net/Article/Details?articleid=35568011LinkedList
2016-09-17 00:51:33 309
转载 【Java集合源码剖析】ArrayList源码剖析
转载轻注明出处:http://blog.csdn.net/ns_code/article/details/35564663 Java集合工具包位于Java.util包下,包含了很多常用的数据结构,如数组、链表、栈、队列、集合、哈希表等。学习Java集合框架下大致可以分为如下五个部分:List列表、Set集合、Map映射、迭代器(Iterator、Enumeration)、
2016-09-17 00:50:39 236
转载 【Java集合源码剖析】Java集合框架
转载轻注明出处:http://blog.csdn.net/ns_code/article/details/35564663 Java集合工具包位于Java.util包下,包含了很多常用的数据结构,如数组、链表、栈、队列、集合、哈希表等。学习Java集合框架下大致可以分为如下五个部分:List列表、Set集合、Map映射、迭代器(Iterator、Enumeration)、
2016-09-17 00:50:15 266
转载 【Java TCP/IP Socket】Socket编程知识点总结
转载请注明出处:http://blog.csdn.net/ns_code/article/details/16118955简介1、协议相当于相互通信的程序间达成的一种约定,它规定了分组报文的结构、交换方式、包含的意义以及怎样对报文所包含的信息进行解析。2、TCP/IP协议族有IP协议、TCP协议和UDP协议。3、TCP协议和UDP协议使用的地址叫做端口号
2016-09-16 23:31:54 314
转载 【Java TCP/IP Socket】深入剖析socket——TCP套接字的生命周期
转载请注明出处:http://blog.csdn.net/ns_code/article/details/16113083 建立TCP连接 新的Socket实例创建后,就立即能用于发送和接收数据。也就是说,当Socket实例返回时,它已经连接到了一个远程终端,并通过协议的底层实现完成了TCP消息或握手信息的交换。 客户端连接的建立
2016-09-16 23:31:25 507
转载 【Java TCP/IP Socket】深入剖析socket——TCP通信中由于底层队列填满而造成的死锁问题(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/15939993 基础准备 首先需要明白数据传输的底层实现机制,在http://blog.csdn.net/ns_code/article/details/15813809这篇博客中有详细的介绍,在上面的博客中,我们提到了SendQ和RecvQ缓冲队列,
2016-09-16 23:30:46 649
转载 【Java TCP/IP Socket】深入剖析socket——数据传输的底层实现
转载请注明出处:http://blog.csdn.net/ns_code/article/details/15813809 底层数据结构 如果不理解套接字的具体实现所关联的数据结构和底层协议的工作细节,就很难抓住网络编程的精妙之处,对于TCP套接字来说,更是如此。套接字所关联的底层的数据结构集包含了特定Socket实例所关联的信息。比附,套接字结构除其他信息
2016-09-16 23:29:50 377
转载 【Java TCP/IP Socket】基于NIO的TCP通信(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/15545057 NIO主要原理及使用 NIO采取通道(Channel)和缓冲区(Buffer)来传输和保存数据,它是非阻塞式的I/O,即在等待连接、读写数据(这些都是在一线程以客户端的程序中会阻塞线程的操作)的时候,程序也可以做其他事情,以实现线程的异
2016-09-16 23:28:52 1428 1
转载 【Java TCP/IP Socket】Java NIO Socket VS 标准IO Socket
转载请注明出处:http://blog.csdn.net/ns_code/article/details/15378417 简介 Java NIO从JDK1.4引入,它提供了与标准IO完全不同的工作方式。NIO包(java.nio.*)引入了四个关键的抽象数据类型,它们共同解决传统的I/O类中的一些问题。 1、 Buffer:它是包含数据且用
2016-09-16 23:27:56 256
转载 【Java TCP/IP Socket】TCP Socket通信中由read返回值造成的的死锁问题(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/14642873 书上示例 在第一章《基本套接字》中,作者给出了一个TCP Socket通信的例子——反馈服务器,即服务器端直接把从客户端接收到的数据原原本本地反馈回去。 书上客户端代码如下:[java] view plain
2016-09-16 23:25:21 745
转载 【Java TCP/IP Socket】基于线程池的TCP服务器(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/14451911 了解线程池 在http://blog.csdn.net/ns_code/article/details/14105457(读书笔记一:TCP Socket)这篇博文中,服务器端采用的实现方式是:一个客户端对应一个线程。但是,每个新
2016-09-16 23:24:16 291
转载 【Java TCP/IP Socket】构建和解析自定义协议消息(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/14229253 在传输消息时,用Java内置的方法和工具确实很用,如:对象序列化,RMI远程调用等。但有时候,针对要传输的特定类型的数据,实现自己的方法可能更简单、容易或有效。下面给出一个实现了自定义构建和解析协议消息的Demo(书上例子)。
2016-09-16 23:23:08 660
转载 【Java TCP/IP Socket】UDP Socket(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/14128987UDP的Java支持 UDP协议提供的服务不同于TCP协议的端到端服务,它是面向非连接的,属不可靠协议,UDP套接字在使用前不需要进行连接。实际上,UDP协议只实现了两个功能: 1)在IP协议的基础上添加了端口; 2
2016-09-16 23:00:34 332
转载 【Java TCP/IP Socket】TCP Socket(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/14105457TCP的Java支持 协议相当于相互通信的程序间达成的一种约定,它规定了分组报文的结构、交换方式、包含的意义以及怎样对报文所包含的信息进行解析,TCP/IP协议族有IP协议、TCP协议和UDP协议。现在TCP/IP协议族中的主要socket类型为流套接字
2016-09-16 22:59:47 288
转载 【Java TCP/IP Socket】Socket编程大合集
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17526127 为了方便各位网友学习以及方便自己复习之用,将Java TCP/IP Socket编程系列内容按照由浅入深的学习顺序总结如下,点击相应的标题即可跳转到对应的文章:【Java TCP/IP Socket】Java TCP Soc
2016-09-16 22:56:18 3521 2
转载 【Java并发编程】并发编程大合集
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17539599 为了方便各位网友学习以及方便自己复习之用,将Java并发编程系列内容系列内容按照由浅入深的学习顺序总结如下,点击相应的标题即可跳转到对应的文章 【Java并发编程】实现多线程的两种方法 【Java并发编程】线程的中断
2016-09-16 22:54:27 332
转载 【Java并发编程】之二十三:并发新特性—信号量Semaphore(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17524153 在操作系统中,信号量是个很重要的概念,它在控制进程间的协作方面有着非常重要的作用,通过对信号量的不同操作,可以分别实现进程间的互斥与同步。当然它也可以用于多线程的控制,我们完全可以通过使用信号量来自定义实现类似Java中的synchronized、w
2016-09-16 22:53:55 366
转载 【Java并发编程】之二十二:并发新特性—障碍器CyclicBarrier(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17512983 CyclicBarrier(又叫障碍器)同样是Java 5中加入的新特性,使用时需要导入java.util.concurrent.CylicBarrier。它适用于这样一种情况:你希望创建一组任务,它们并发地执行工作,另外的一个任务在这一组任务并发执
2016-09-16 22:52:40 205
转载 【Java并发编程】之二十一:并发新特性—阻塞队列和阻塞栈(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17511147阻塞队列 阻塞队列是Java 5并发新特性中的内容,阻塞队列的接口是java.util.concurrent.BlockingQueue,它有多个实现类:ArrayBlockingQueue、DelayQueue、LinkedBlockingQ
2016-09-16 22:51:57 263
转载 【Java并发编程】之二十:并发新特性—Lock锁和条件变量(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17487337简单使用Lock锁 Java 5中引入了新的锁机制——java.util.concurrent.locks中的显式的互斥锁:Lock接口,它提供了比synchronized更加广泛的锁定操作。Lock接口有3个实现它的类:ReentrantLo
2016-09-16 22:50:59 349
转载 【Java并发编程】之十九:并发新特性—Executor框架与线程池(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17465497Executor框架简介 在Java 5之后,并发编程引入了一堆新的启动、调度和管理线程的API。Executor框架便是Java 5中引入的,其内部使用了线程池机制,它在java.util.cocurrent 包下,通过该框架来控制线程的
2016-09-16 22:49:27 385
转载 【Java并发编程】之十八:第五篇中volatile意外问题的正确分析解答(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17382679 在《Java并发编程学习笔记之五:volatile变量修饰符—意料之外的问题》一文中遗留了一个问题,就是volatile只修饰了missedIt变量,而没修饰value变量,但是在线程读取value的值的时候,也读到的是最新的数据。但是在网上查了很多
2016-09-16 22:48:17 261
转载 【Java并发编程】之十七:深入Java内存模型—内存操作规则总结
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17377197主内存与工作内存 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量主要是指共享变量,存在竞争问题的变量。Java内存模型规定所有的变量都存储在主内存中,而每条线程
2016-09-16 22:47:38 236
转载 【Java并发编程】之十六:深入Java内存模型——happen-before规则及其对DCL的分析(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17348313happen—before规则介绍 Java语言中有一个“先行发生”(happen—before)的规则,它是Java内存模型中定义的两项操作之间的偏序关系,如果操作A先行发生于操作B,其意思就是说,在发生操作B之前,操作A产生的影响都能被操作
2016-09-14 15:15:57 284
转载 【Java并发编程】之十五:并发编程中实现内存可见的两种方法比较:加锁和volatile变量
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17290021 在http://blog.csdn.net/ns_code/article/details/17288243这篇博文中,讲述了通过同步实现内存可见性的方法,在http://blog.csdn.net/ns_code/article/details/1
2016-09-14 15:14:45 269
转载 【Java并发编程】之十四:图文讲述同步的另一个重要功能:内存可见性
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17288243 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性。我们不仅希望防止某个线程正在使用对象状态而另一个线程在同时修改该状态,而且还希望确保当一个线程修改了对象状态后,其他线程能够看到该变化。而线程的
2016-09-14 15:14:01 197
转载 Java并发编程】之十三:生产者—消费者模型(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17249321 生产者消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一存储空间,生产者向空间里生产数据,而消费者取走数据。 这里实现如下情况的生产--消费模型: 生产者不断交替地生产两组数据“姓名--1 --> 内容-
2016-09-14 15:12:18 244
转载 【Java并发编程】之十二:线程间通信中notifyAll造成的早期通知问题(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17229601 如果线程在等待时接到通知,但线程等待的条件还不满足,此时,线程接到的就是早期通知,如果条件满足的时间很短,但很快又改变了,而变得不再满足,这时也将发生早期通知。这种现象听起来很奇怪,下面通过一个示例程序来说明问题。 很简单,两个线程等待删
2016-09-14 13:01:32 224
转载 【Java并发编程】之十一:线程间通信中notify通知的遗漏(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17228213 notify通知的遗漏很容易理解,即threadA还没开始wait的时候,threadB已经notify了,这样,threadB通知是没有任何响应的,当threadB退出synchronized代码块后,threadA再开始wait,便会一直阻塞等待,
2016-09-14 13:00:28 253
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人