代码改变世界

阅读排行榜

select,epoll,poll比较(网络资源总结)

2011-08-26 01:09 by Aga.J, 2458 阅读, 收藏,
摘要: select,poll,epoll简介selectselect本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺点是:1 单个进程可监视的fd数量被限制2 需要维护一个用来存放大量fd的数据结构,这样会使得用户空间和内核空间在传递该结构时复制开销大3 对socket进行扫描时是线性扫描pollpoll本质上和select没有区别,它将用户传入的数组拷贝到内核空间,然后查询每个fd对应的设备状态,如果设备就绪则在设备等待队列中加入一项并继续遍历,如果遍历完所有fd后没有发现就绪设备,则挂起当前进程,直到设备就绪或者主动超时,被唤醒后它又要再次遍历fd。这个过程经历了 阅读全文

Linux TCP server系列(2)-简单优化服务器和客户端程序

2011-09-15 16:48 by Aga.J, 2344 阅读, 收藏,
摘要: 目标:在上个server中考虑更多细节问题,完善server。思路:(1)服务器父进程使用fork派生子进程后,如果子进程运行结束,那么该进程不会立刻被销毁,而会进入“僵尸状态”,仍然维护着自身的信息,这时候如果服务器父进程不加以处理,那么很快就会消耗完系统的内存空间,所以父进程需要监听子进程SIGCHLD信号,并做出处理以销毁残留信息,这里可以使用wait或者waitpid来实现。我们在父进程调用listen之后,注册监听信号和信号处理函数signal(SIGCHLD, sig_child);信号处理函数实现如下:void sig_child(int signo) //父进程对子进程结束的信 阅读全文

Android使用Bitmap类获取图片像素的问题

2011-01-21 00:14 by Aga.J, 2255 阅读, 收藏,
摘要: 在windows 7下,一张图片的像素是X*Y,但是通过Android的Bitmap类获取的像素的大小却是 (2/3*X) * (2/3*Y)....为什么会这样。。。。幸好有比较系统的开发程序的过程指导,不然也没办法那么短时间抓到这个bug所在。。先Mark下,以后注意这点 阅读全文

看着这个实例,一起来学重构吧!

2010-08-17 18:54 by Aga.J, 2143 阅读, 收藏,
摘要: 浏览jake的blog时看到这样一篇文章30 Days of .NET [Windows Mobile Applications] - Day 01: Minutes to Midnight Countdown(午夜倒数器),题目非常吸引人,我点了进去,看到原来这是jake翻译一个叫Chris Craft的人的系列文章,看完了jake这篇文章后,我也去了Chris Craft的blog看了这篇原文,下载了源代码,代码很简单,就一个timer_Tick的函数把所有程序逻辑都搞清楚了,就是计算我们离今天的结束还有多少小时,多少分钟,多少秒,然后一个一个的列举在form上。下面就是timer_Ti. 阅读全文

J2EE学习笔记:第五天 EJB

2011-06-13 00:29 by Aga.J, 2060 阅读, 收藏,
摘要: (内容安排较乱 , 仅作本人个人学习笔记)1 EJB概述 EJB实际上是一个被管理的组件,存在于J2EE容器中,由J2EE容器负责创建,控制,销毁,并控制当前存在的EJB数量和EJB所用的资源(内存和数据库连接等)。 每个容器维护一个分配给客户端的EJB实例池,当客户端不再需要EJB时,该实例将会被返回到EJB实例池中,并释放其资源,而在负载过重的情况下,即使客户端在使用EJB,EJB实例也会被容器强制返回实例池,但是这个实例还可以给其他客户端使用,而当客户端向EJB发起另一个请求时,容器会重新建立初始EJB实例来响应这个请求,也就是说一些EJB实例和他们所使用的资源可以在多个客户端之间进行共 阅读全文
上一页 1 2 3 4 5 6 7 8 9 ··· 33 下一页