Java网络编程从入门到精通(25):创建ServerSocket对象 - 编程入门网
import java.net.*;
class TestRequestQueue
{
public static void main(String[] args) throws Exception
{
for (int i = 0; i < 10; i++)
{
Socket socket = new Socket("localhost", 1234);
socket.getOutputStream().write(1);
System.out.println("已经成功创建第" + String.valueOf(i + 1) + "个客户端连接!");
}
}
}
public class SetRequestQueue
{
public static void main(String[] args) throws Exception
{
if (args.length == 0)
return;
int queueLength = Integer.parseInt(args[0]);
ServerSocket serverSocket = new ServerSocket(1234, queueLength);
System.out.println("端口(1234)已经绑定,请按回车键开始处理客户端请求!");
System.in.read();
int n = 0;
while (true)
{
System.out.println("<准备接收第" + (++n) + "个客户端请求!");
Socket socket = serverSocket.accept();
System.out.println("正在处理第" + n + "个客户端请求");
Thread.sleep(3000);
System.out.println("第" + n + "个客户端请求已经处理完毕!>");
}
}
}
测试(按着以下步骤操作) 1. 执行如下命令(在执行这条命令后,先不要按回车键): java server.SetRequestQueue 2 运行结果: 端口(1234)已经绑定,请按回车键开始处理客户端请求! 2. 执行如下命令: java server.TestRequestQueue 运行结果:
Java网络编程从入门到精通(25):创建ServerSocket对象(4)时间:2011-01-123. 按回车键继续执行SetRequestQueue后,运行结果如下:
从第二步的运行结果可以看出,当TestRequestQueue创建两个Socket连接之后,服务端的请求队列已满,并且服务端暂时无法继续执行(由于System.in.read()的原因而暂停程序的执行,等待用户的输入)。因此,服务端程 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |