全部博文(465)
发布时间:2013-02-20 08:31:26
6.6.2 常见的并发网络服务程序设计方案W. Richard Stevens 的《UNIX 网络编程(第2 版)》第27 章“Client-ServerDesign Alternatives”介绍了十来种当时(20 世纪90 年代末)流行的编写并发网络程序的方案。[UNP] 第3 版第30 章,内容未变,还是这几种。以下简称UNP CSDA方案。[UNP] 这本书主要讲解阻塞式网络.........【阅读全文】
发布时间:2013-02-19 16:40:47
这本书主要分享了作者在实现公司内部的分布式服务系统中积累的多线程和网络编程方面的经验,并介绍了C++ 在编写这种分布式系统的服务端程序时的功能取舍与注意事项,书中的很多决策(design decision)是在这一应用场景下做出的。这本书没有细谈分布式系统的设计,只在第9章列举了分布式系统的挑战及其对程序设计(服.........【阅读全文】
发布时间:2013-01-31 09:29:35
Looper中的消息队列处理机制Looper也提供了消息的定义、消息的发送、消息的处理者的自定义和消息队列。在其头文件Looper.h中,定义了消息结构体Message,它只有一个类型成员,Message的定义如下(见文件Looper.h,下同): 消息的处理者可由MessageHandler进行处理:使用者可通过派生出子类来扩展消.........【阅读全文】
发布时间:2013-01-29 13:47:28
《深入剖析Android系统》第9章RIL补充配图《深入剖析Android系统》一书中第9章的RIL部分的函数层层调用,可以用插图的方式标示出主要的调用关系。由于插图较大,不适合16开的书籍尺寸大小,故未将相关插图放到《深入剖析Android系统》一书中。读者在阅读该章内容时,可以在电脑上放大插图来查看函数的调用关系.........【阅读全文】
发布时间:2013-01-29 13:26:01
Looper中的睡眠等待与唤醒机制C++类Looper中的睡眠和唤醒机制是通过pollOnce和wake函数提供的,它们又是利用操作系统(Linux内核)的epoll机制来完成的。当被监控的文件(通过epoll_ctl的EPOLL_CTL_ADD添加进去)可I/O时,epoll_wait调用会从睡眠中醒来,这时,可以检查是哪个(或哪些)文件描述符对应的文件可.........【阅读全文】