说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Android开发进阶之NIO非阻塞包(一)

HTML文档下载 WORD文档下载 PDF文档下载
Android开发进阶之NIO非阻塞包(一)

作者:Android开发网


  对于Android的网络通讯性能的提高,我们可以使用Java上高性能的NIO (New I/O) 技术进行处理,NIO是从JDK 1.4开始引入的,NIO的N我们可以理解为Noblocking即非阻塞的意思,相对应传统的I/O,比如Socket的accpet()、read()这些方法而言都是阻塞的。

  NIO主要使用了Channel和Selector来实现,Java的Selector类似Winsock的Select模式,是一种基于事件驱动的,整个处理方法使用了轮训的状态机,如果你过去开发过Symbian应用的话这种方式有点像活动对象,好处就是单线程更节省系统开销,NIO的好处可以很好的处理并发,对于Android网游开发来说比较关键,对于多点Socket连接而言使用NIO可以大大减少线程使用,降低了线程死锁的概率,毕竟手机游戏有UI线程,音乐线程,网络线程,管理的难度可想而知,同时I/O这种低速设备将影响游戏的体验。

  NIO作为一种中高负载的I/O模型,相对于传统的BIO (Blocking I/O)来说有了很大的提高,处理并发不用太多的线程,省去了创建销毁的时间,如果线程过多调度是问题,同时很多线程可能处于空闲状态,大大浪费了CPU时间,同时过多的线程可能是性能大幅下降,一般的解决方案中可能使用线程池来管理调度但这种方法治标不治本。使用NIO可以使并发的效率大大提高。当然NIO和JDK 7中的AIO还存在一些区别,AIO作为一种更新的当然这是对于Java而言,如果你开发过Winsock服务器,那么IOCP这样的I/O完成端口可以解决更高级的负载,当然了今天Android123主要给大家讲解下为什么使用NIO在Android中有哪些用处。

   NIO我们分为几个类型分别描述,作为Java的特性之一,我们需要了解一些新的概念,比如ByteBuffer类,Channel,SocketChannel,ServerSocketChannel,Selector和SelectionKey。有关具体的使用,Android开发网将在明天详细讲解。网友可以在Android SDK文档中看下java.nio和java.nio.channels两个包了解。

从NSA携谷歌、微软等9家名企监控用户行为看数据安全 【专访间】新科兰德创始人左磊:我们的“卖点”是“数据弹药” 甲骨文公司宣布推出最新Java EE 7 10款最佳CSS/jQuery开源图片说明 创业者应避免对投资者说的五句话 直接拿来用!最火的iOS开源项目(二) 西部数据Pat Wilkison:云计算市场是创新热点 猎豹浏览器发布手机版:PM谈开发理念 成为伟大开发者的“九步曲” 使用GPU构建更便宜的Google神经网络 Facebook与Yahoo!的“火花”:系统间实时数据流管理工具 视金钱如粪土?Yahoo!又要买了,梅姐的算盘是这样打的 MySQL手册不再遵循GPL协议:MySQL走向闭源前兆? 扁平化设计会扼杀人们的创造力吗? 又一巨头涉足移动视频分享领域:传雅虎欲收购短视频应用Qwiki 史上最牛:主要靠三消游戏IPO King也许会是第一家 乐视超级电视预约启动 1小时预约近1.4万台 王坚:未来一年阿里云会有很大变化 梁胜:开源并不是做好软件的唯一方式 如何为IE 10编写特定的样式 MySQL手册许可证更改乃是Bug惹得祸 开源世界高峰论坛首批演讲议题公布 测试工程师的心灵鸡汤:谦虚、不沉默、有危机感、不断努力 高德地图API“沿图有你,晒出你的LBS应用”活动拉开帷幕! 谁能找出Windows 8.1的安全漏洞,就将获得微软10万美元奖金! 【直击美国云计算】Facebook分享数据中心新网络架构Fabric 【直击美国云计算】OCP发起产业界的Maker运动 红帽刘长春:开源是推动云计算和大数据发展的重要力量 【直击美国云计算】出货量达x86的20多倍 ARM或将成为数据中心主角 孙小群:将SAP HANA打造为开放的PaaS平台 GitHub推出重大改进:强调速度、内容和交互性 紧急求救!!! 如何制作浮动面板? 给分的问题! 如何获得 mod_webapp.so 紧急求救 想知道各位WINDOWS下用什么SNIFFER? 对于网络上的第三方控件的看法 简单问题?JTable中的数据如何居中对齐,有没有直接的函数(不用自定义CellRenderer) 有关析构函数 请问一个小问题 关于ADO中ltBatchOptimisticr的FilterGroup的问题 两个星要到多少分才能升到三个星呀 请问有谁知道北京的成人教育大致的情况如何? 是VC编译器不符合ANSI C++,还是?? 我现在在写个程序!是关于证券方面的!可是如下的一个小问题如何解决?? ★★如何让excel的某行的值等于另一行的值乘以一个固定值(急问,在线等待)★★ @@@开学了,散分! 怎样构建一个LDAP服务器和怎样使用 用VFW采集时进行压缩的问题。求解 C# 在DW MX中如何进行层定位? 回复:機會不要錯過! 華強科技有限公司幫你成就軟件工程師的夢想! How to access SMB/CIFS from Sun workstation? 谁来拿分啊。我有一个问题自己解决了,但没有给分的对象。 问一个message Bean的问题,up有分 [EJB]HelloWorldBean正确编译配置和执行,但"HelloWorld"却不见了 寻C语言编程高手!现有一IP地址和网页、搜索栏关键词拦截程序需要编写,付酬!!! 如何让主界面变成三维的那种 寻C语言编程高手!现有一IP地址和网页、搜索栏关键词拦截程序需要编写,付酬!!! 用什么组件能得到网站上的末知大小的文件? 问一个简单的问题 还是有问题关于获得选中安钮的当前行,请进>> 请教简单问题,如何将菜单的一个选项隐藏。就是类似cb的将Visible=false的做法!! 连接ACCESS数据库的问题? 寻C语言编程高手!现有一IP地址和网页、搜索栏关键词拦截程序需要编写,付酬!!! 如何提取一个EXE文件的特征码??要高分者和高手进!!!!来者有分! j2ee配置问题,大家帮我看看,错误出在哪里?谢了! 如何在注册表中修改使得浏览的网页可以即时通过工具栏的“编辑”调用DW修改? "聊聊"网站是怎样建的?用拉什么技术,可以即使聊天? 类型转换,非常奇怪的问题。高手进来 搞纯C++的大虾请进 关于MDI Child窗口的一个问题? DOS6.22的下载及6.0源码 sql语句问题:怎样从表中选出字段值包含在一个变量字串的那条记录。100分!在线等待! 关于那个mesh绕自己中心(注意是自己中心)旋转的问题我还没有解决 抛砖引玉: 证券行业软件之数据库存储。 如果下面这个问题谁能解决,我跪下来拜他三下:在WIN2000里,通过更改注册表,以达到更改IE的页面设置(一定要能更改横向:orientation和 过程的问题!!! 一个非常难的问题---挑战这里所有的高手!(解决了,分数我可以追加到200) 用vc7时候怎么导入一张图片作资源?还有怎么添加popup菜单 有关取得一个Tree Control的一个Notify的问题! 劝诫人们学无止境,奋发努力的名句有那些 急~~寒假作业上的…… 小学五年的生活一晃而过,真是( ),( ) .(写两个表示时间易逝的成语)我即将参加六年级毕业统考了, 甲乙两个人同时从A、B两地相向而行,5分钟后两人相遇,相遇后两人继续前行,又经过15/4分钟,甲已超过B地20米,而乙离A地还有80米,A、B两地相距( )米.希望不要用二元一次方程等复杂方式解答. 人的一生要经历多少事情?几经挫折你才会得到你理想的爱人 事业 家庭 朋友 成功 小学生活一晃而过,真是 .(写一个表示时间易逝的成语)下学期我将参加六年级毕业统考了.看看今天糟糕的成1.小学生活一晃而过,真是 .(写一个表示时间易逝的成语)下学期我将参加六年级毕业 如何改进英语教学 人的一生会经历许多的事,我们不应该只看到伤痛,我们应该善于寻找幸福.人生多磨难,何以强求太多,顺其自然,你会发现生活并不可怕.破碎的心无法使其完好如初,但是可以重新拾起,用心呵护, 妈妈呀,妈妈 这是一篇阅读短文!认真阅读下面短文,完成下面的练习.妈妈呀,妈妈 “哎呀,我的小祖宗,别动别动,让我来做.”这话简直成了妈妈的口头禅了.我放学一进家,她便让我做作业,我干 如何珍惜粮食简短些 人生不幸之事犹如一把刀……“人生不幸之事犹如一把刀,它既可以为我们所用,也可以把我们割伤,这要看我们究竟抓住了刀刃,还是握住刀柄” A、人生难免有挫折B、挫折既有消极作用,也有 这种题目什么的最讨厌了,特别是阅读短文完成练习. 什么是数字PID位置型控制算法和增量型控制算法? 把一张纸对折再对折,重复下去,第43次纸的高度是地球大月球的距离.纸厚0.006CM.距离385000KM相信这个人的说法吗? 请详细说明,谢谢了哦 ! 我求你们了 呜呜~~~~~~~~~~~~~~~~~~~ 读短文,完成练习的题目,公鸡和狐狸狐狸见公鸡站在树上,它像想吃鸡,但自己又不会爬树.于是它说:“啊,公鸡,我告诉你一个好消息!”“什么好消息!”公鸡问.“哦,现在所有的动物都成为好 pid控制的算法 如果将一张纸裁成两等份,把裁成的两张纸摞起来.第43次后所有纸的高度便相当于地球到月球的距离.”请给一个合理的理由,并请告诉0.006的43次方是多少?一张纸的厚度为0.006cm地球距月球约3850 帮我起一个练舞蹈作文的题目 怎样用PID算法控制温度? 面对困难,我们应该说什么名言警句来激励他人? 请问小学英语适合利用英文歌曲进行教学吗? 甲、乙两数相加,结果为357.5,如果甲数的小数点向左移一位,就和乙数一样,那么乙数是( ). 初中第一节体育课到底会干什么啊啊?急 ph试纸哪有卖 100吨米等于多少千牛米?寻求达人 在那能买到PH值试纸 成都ph试纸哪里有卖? 汽车发动机功率和牛米的关系汽车发动机的大问题,功率和牛米的关系,都说看发动机的性能看功率和牛米,发动机的综合性能是功率越大牛米也越大,但如果 100KW-200NM和120KW-180NM,那个发动机更好 PH值试纸那里能买到? 哪里可以买到PH试纸,价钱如何? 《那一刻,我迈上了新台阶》作文的开头不要是这个:人生漫漫,每分每秒,我们都在台阶上攀登.每登上一层,我们就站得更高;每登上一层,我们就看得更远——台阶总是在我们的脚下延伸. 提高警惕的名言警句大哥, 茄子内涵是什么意思 建筑给排水图纸上出现一个箭头,箭头上标注1%, 挖土深度大于5m,按土体稳定理论计算后的边坡进行放坡.我们挖土是11米,应该放多长距离 根据提示补写名句.1.我寄愁心与明月,( ).2.( ),天涯共此时.3.疏影横斜水清浅,( ).4.纸上得来终觉浅,( ) .5.勿以恶小而为之,( ).6.千年扬州古运河,堪称一条诗歌之河,你是否在课内外 将一张厚度为0.05毫米的纸对折30次以后,猜一猜它能有多高?我是初中生,这是家作啊,快.要理由.后面的答案要带单位. 假如你是一个世纪老人,见证了罗布泊的百年沧桑,你将向人们诉说什么? 警惕名言如何提高个人警惕性? 等个茄子是什么意思? 假如你是一个世纪老人,见证了罗布泊的百年沧桑,你将会向人们诉说什么? 我工程采用条形基础,基础大放脚宽为1.5m,基槽深度为2.6m,采用放坡施工,边坡比1:1.我工程采用条形基础,基础大放脚宽为1.5m,基槽深度为2.6m,采用放坡施工,边坡比1:1,基础施工工作面为15cm,计 一个6位数,各个数位上的数字之和是17,则这个数是多少,最小是多少 穿越一个世纪,见证沧桑百年,刻画历史巨变,一个生命竟如此厚重.答对有奖什么时候出来的说得谁? 哪些地区以面食为主、 1.东北平原 2.江南水乡 3.华北平原 4.黄土高原只要一个最准确的啊 一个三位数,三个数位上的数的和是17,十位上的数比百位上的数打5,个位上的数是百位数发2倍,求这个三位数. 挖土方、地槽、地坑放坡起点深度、放坡系数、工作面如何确定? 1北方地区年平均降水量为()-()毫米,属于什么区.2人们把东北平原称为()黄土高原和华北平原称为() 初中地理教学视频我现在初三了,可是地理总是考的不好,我非常苦恼,我不知道该怎么办,请问我应该怎么学呢? 地球到月球的距离384公里,用一张长0.2毫米的纸,折多少次可以到达 哪里可以买到PH试纸 涉及的范围是否比较广呢? 一张纸约0.06厘米厚,将它对折43次,可能等于地球到月球的距离吗?为什么? 在哪里能够买到PH试纸只是一个小县城,别弄什么太高级的地方,没太多的条件,不过要一些普通的场所道还有!THANGK YOU! 如何提高初中地理教学成绩 告诫自己,如果现在不努力学习,以后就会后悔的精辟名言就是告诫自己要珍惜时间,好好学习,强调“不然以后会后悔”,要贴在桌子上告诫自己的,希望比较精辟的,不要那些常见的,因为常见的 哪儿可以买到pH试纸? 甲乙两个人同时从A、B两地相向而行,5分钟后两人相遇,相遇后两人继续前行,又经过4分之15分钟,甲已超过B地20米,而乙离A地还有80米,A、B两地相距( )米. 告诫人们学无止境,奋发努力的名言 在哪里能买到PH试纸 查成语什么日经济
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘