7 b7771253

尚未进行身份认证

暂无相关描述

等级
TA的排名 0

谈谈对AIO、BIO和NIO的理解

首先简单理解BIO,同步阻塞式IO,一个连接一个线程,这个线程只针对这个连接而存在,专注于它的收发,如果没有数据读入它就一直阻塞等待。当然可以通过线程池改善。AIO,同步非阻塞式IO,一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。用户进程也需要时不时的询问IO操作是否就绪,这就要求用户进程不停的去询问。 NIO

2016-09-15 17:24:06

Java 异常分类

(图片来自网络,如侵删)  java.lang.Throwablejava.lang.Throwable是Java中所有可以错误和异常的父类。这里设计成父类而不是接口,我想部分原因可能是在Java诞生的早期,使用类继承结构更为流行。但更重要的原因应该是由于Exception不适于设计为接口。接口重视的是实现方法,规则的描述,而Exception重视的是里面含有的信息以及类名等

2016-09-14 09:58:08

Java 实现 堆排序 快速排序 以及 TopK问题(二)

接上文已知快速排序可以将一个数组分成两部分,一部分大于某个值,一部分小于某个值,那么由这点可以推出取TopK值的方法如下:假设快排每一趟的分割值的点为p,数组长度为n,那么需要比较n-p与k,如果恰好K==n-p,那么只需要取p点之后的所有值就行了。如果k如果k>n-p,先输出右边的n-p个值,再递归左边寻找Top(k-n+p)值代码如下publ

2016-09-13 13:42:00

Java 实现 堆排序 快速排序 以及 TopK问题(一)

问题是从大小为N的无序数组里面取K个最大值最早想到的办法是冒泡K轮,但是后来思考到,堆排序和快速排序,可以更好的实现取K个最大值。publicclassMain{ publicstaticvoidmain(String[]args){ int[]arr={5,62,81,63,13,43,34,5,8,9,6,44}; intk

2016-09-13 11:26:51

根据入栈顺序输出所有可能的出栈顺序 (Java)

某次面试被问到的一个题,当场答得不是很好,所以回来记录一下比如入栈顺序是1,2,3,那么出栈顺序分别可以是1,2,3;1,3,2;….importjava.util.Stack;publicclassss{staticchar[]in={'a','b','c'};publicstaticvoidmain(String[]args){fun(0

2016-09-11 18:13:34

某VTE web后台岗 面试经验

如何给MySQL添加索引–直接创建索引CREATEINDEXindex_nameONtable(column(length))–修改表结构的方式添加索引ALTERTABLEtable_nameADDINDEXindex_nameON(column(length))–创建表的时候同时创建索引CREATETABLE`table`(`id`int(11)NOTN

2016-09-10 18:45:26

基于信鸽的在线聊天软件(一)

服务端和客户端的搭建平台选择首先想到的是用服务器搭,然而学校封端口,虚拟服务器又麻烦的很,所以考虑到了用云服务。两个选择,腾讯信鸽和百度云推送,本项目基于信鸽。信鸽开发者中心http://xg.qq.com/xgsdk地址http://xg.qq.com/xg/ctr_index/download服务端搭建在服务端的sdk里找到了本项目最核心的代码publicstaticJSONOj

2016-03-09 00:26:10

java基础题汇总

网上搜集的题目,自己的想法解答进程线程的区别线程的划分尺度小于进程,进程在执行过程中拥有独立的内存单元,而多个线程共享内存。进程间通信IPC,线程间可以直接读写进程数据段。IO模型有哪些?阻塞I/O非阻塞I/OI/O复用信号驱动I/O异步I/O不同操作系统实现进程有什么区别LINUX中的进程本身是可以执行的。而WINDOW

2016-03-05 16:22:24
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!