java写socket管理除了多线程还有什么方法。

magicpower 2005-06-10 11:02:18
我做c select模型用的比较多 windows下也可以用多线程 不过一般不采用 完成端口在大规模连接的情况下用的比较多。

想用java写个管理大量连接的程序 如果只是多线程似乎很耗费资源

有朋友做过吗 给点意见
...全文
128 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyxxxxx 2005-06-11
  • 打赏
  • 举报
回复
使用非阻塞IO
参考jdk中java.nio包中的
ServerSocketChannel、SelectableChannel、 SelectionKey等类
IBM中国网站上有这方面资料
zhang21cnboy 2005-06-11
  • 打赏
  • 举报
回复
这个只需要你自己实现一下就可以了。c下面你说的那个,叫异步socket,如果你不用mfc或者其他类库的话,你还是需要自己做线程实现。

在java下,如果你想实现异步socket。也很简单。结合队列,线程池,就完全可以了。

不过,如果你要实现并发连接比较大的话,不光是程序的问题。

当然,像你说得,同时保持100个连接,那不会有很大问题,当然还要看你的连接是怎么处理的,如果仅仅是发送一些小数据,并不会做大数据处理,那连1000,问题都不大。

呵呵,weblogic等最成功的中间件服务器,都是用java开发的,因此不要怀疑java是否能够完成,关键是要看自己的水平
yangbc 2005-06-11
  • 打赏
  • 举报
回复
你根本就不该用java开发这种程序,java不是给效率要求高的需求用的,windows的完成端口很好,继续使用吧
magicpower 2005-06-10
  • 打赏
  • 举报
回复
我想知道java socket有没有这样的机制存在
magicpower 2005-06-10
  • 打赏
  • 举报
回复
连接池似乎解决不了我的问题,我需要保持多个连接,也就是说也许同时要保持上100个连接,而这些连接都是长期的。
我需要的是一种通知机制,也就是说一种消息,如windows 中 waitformulitiobject,在网络连接有action发生的时候,我可以等到通知,我想知道java soceketyo
yinbodotcc 2005-06-10
  • 打赏
  • 举报
回复
可以用连接池

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧