上一页 1 ··· 102 103 104 105 106 107 108 109 110 ··· 156 下一页

2012年12月25日

多任务处理:关闭连接

摘要: 关闭连接 可能你从没有想过由谁来关闭一个连接。在电话交谈中,任何一方都可以发起结束交谈的过程。这通常是这样的: "好了,我得走了。" "好的,再见。" "再见。" 另一方面,网络协议通常明确指定了由谁来发起"关闭"连接。在回显协议中,见图4.1(a),服务器原原本本地将客户端... 阅读全文

posted @ 2012-12-25 14:39 吴一达 阅读(262) 评论(0) 推荐(0) 编辑

多任务处理:控制默认行为

摘要: 控制默认行为 TCP/IP协议的开发者用了大量的时间来考虑协议的默认行为,以满足大部分应用程序的需要。(如果你对此表示怀疑,可以参考RFC1122和1123,它们根据多年的经验对TCP/IP协议的实现的推荐行为进行了详尽的描述。)对于大多数应用程序来说,这些设计都非常适合,然而,"满足所有需... 阅读全文

posted @ 2012-12-25 14:33 吴一达 阅读(155) 评论(0) 推荐(0) 编辑

多任务处理:多接收者(广播和多播)

摘要: 多接收者 到目前为止,我们的套接字都处理的是两个实体之间的通信,通常是一个服务器和一个客户端。这种一对一的通信方法有时称为单播(unicast)。而对于某些信息,多个接收者都可能对其感兴趣。对于这种情况,我们可以向每个接收者单播一个数据副本,但是这样做效率可能非常低。由于将同样的数据发送了多... 阅读全文

posted @ 2012-12-25 14:29 吴一达 阅读(432) 评论(0) 推荐(0) 编辑

2012年12月24日

Apache软件基金会项目介绍

摘要: HTTP Server: 可以在UNIX,MS-Windows,Macintosh和Netware操作系统下运行的HTTP服务器的项目Ant: 基于Java语言的构建工具,类似于C语言的Make工具。AXIS2:Web服务(SOAP, WSDL)的处理器,基于AXIS1.X重新构建。APR:(... 阅读全文

posted @ 2012-12-24 11:05 吴一达 阅读(501) 评论(0) 推荐(0) 编辑

Android应用程序窗口(Activity)的绘图表面(Surface)的创建过程分析

摘要: 在前文中,我们分析了应用程序窗口连接到WindowManagerService服务的过程。在这个过程中,WindowManagerService服务会为应用程序窗口创建过一个到SurfaceFlinger服务的连接。有了这个连接之后,WindowManagerService服务就可... 阅读全文

posted @ 2012-12-24 00:55 吴一达 阅读(247) 评论(0) 推荐(0) 编辑

2012年12月23日

多任务处理:阻塞和超时

摘要: 阻塞和超时 Socket的I/O调用可能会因为多种原因而阻塞。数据输入方法read()和receive()在没有数据可读时会阻塞。TCP套接字的write()方法在没有足够的空间缓存传输的数据时可能阻塞。 ServerSocket 的accept()方法和Socket的构造函数都会阻塞等待... 阅读全文

posted @ 2012-12-23 09:49 吴一达 阅读(241) 评论(0) 推荐(0) 编辑

多任务处理:管理调度Executor 接口

摘要: 系统管理调度:Executor接口 在上一节中我们已经看到,将客户服务器协议的细节封装起来(如EchoProtocol.java),就可以通过同一个协议实现来使用不同的"调度"方法(如,TCPEchoServerThread.java和TCPEchoServerThreadPool.java... 阅读全文

posted @ 2012-12-23 09:47 吴一达 阅读(194) 评论(0) 推荐(0) 编辑

多任务处理:线程池

摘要: 线程池 每个新线程都会消耗系统资源:创建一个线程将占用CPU周期,而且每个线程都自己的数据结构(如,栈)也要消耗系统内存。另外,当一个线程阻塞(block)时,JVM将保存其状态,选择另外一个线程运行,并在上下文转换(context switch)时恢复阻塞线程的状态。随着线程数的增加,线... 阅读全文

posted @ 2012-12-23 09:44 吴一达 阅读(334) 评论(0) 推荐(0) 编辑

多任务处理:一客户一线程

摘要: 一客户一线程 在一客户一线程(thread-per-client)的服务器中,为每个连接都创建了一个新的线程来处理。服务器循环执行一些任务,在指定端口上侦听连接,反复接收客户端传入的连接请求,并为每个连接创建一个新的线程来对其进行处理。 TCPEchoServerThread.java实现... 阅读全文

posted @ 2012-12-23 09:42 吴一达 阅读(489) 评论(0) 推荐(0) 编辑

多任务处理:服务器协议

摘要: 服务器协议 既然我们将要介绍的多任务服务器方法与特定的客户端-服务器协议相互独立,我们希望能够实现一个同时满足两者的协议。EchoProtocol中给出了回显协议的代码。这个类的静态方法handleEchoClient()中封装了对每个客户端的处理过程。除添加了写日志功能(马上会对其介绍)外... 阅读全文

posted @ 2012-12-23 09:41 吴一达 阅读(206) 评论(0) 推荐(0) 编辑

上一页 1 ··· 102 103 104 105 106 107 108 109 110 ··· 156 下一页

导航