很多操作系统支持多个线程同时调用Socket.accept()方法,上述程序可以简化为:class PreAllocation
{
private static int PORT = 80;
private static int N = 12;
public static void main(String args[]) throws Exception
{
new PreAllocation();
}
private java.net.ServerSocket m_server;
private class Slave extends Thread
{
public void run()
{
java.net.Socket sock = m_server.accept();
//todo:... 同上面部分
}
}
public PreAllocation() throws Exception
{
m_server = new java.net.ServerSocket(PORT);
for(int i=0; i<N; i++)
new Slave().start();
this.wait(); //这一句使master thread自身进入死锁,在很多操作系统中,主线程退出将导致从线程也退出,如果是运行在win32s中,这一句可以去掉
}
}
{
private static int PORT = 80;
private static int N = 12;
public static void main(String args[]) throws Exception
{
new PreAllocation();
}
private java.net.ServerSocket m_server;
private class Slave extends Thread
{
public void run()
{
java.net.Socket sock = m_server.accept();
//todo:... 同上面部分
}
}
public PreAllocation() throws Exception
{
m_server = new java.net.ServerSocket(PORT);
for(int i=0; i<N; i++)
new Slave().start();
this.wait(); //这一句使master thread自身进入死锁,在很多操作系统中,主线程退出将导致从线程也退出,如果是运行在win32s中,这一句可以去掉
}
}
解决方案 »
- JFrame添加组件
- Java面试题,帮忙看一下吧
- Java中,如何计算,如何测试出一个集合或者一个字符串变量占用了多大的内存空间啊?
- 各们前辈一定要帮帮我,我都搞了一天了,也没有一个结果.
- 请问Java Script 和JAVA有什么差别?我完全是新手。。。
- 新人提问,如果限制input里面输入的字符串的长短
- 反射机制的问题,请教下,我知道类名,这个类名是个动态的,做强制转换
- java socket编程,希望高手帮忙,马上结贴!
- 那边有Java socket和C socket通讯的资料?我在传输数据的时候,数据不对。
- "java打工最容易(好像招聘兼职的都盯着java 我是指学生)" 这句话是真是假? 来者有分分分分..........................
- JAVA命令行如何调用部署在WEBLOGIC中的EJB。
- 请问如何实现日期时间的减操作
1.可以避免创建/销毁线程的操作系统开销
2.可以控制同时连接的数目(最高为N)