rose策略监听多个端口应用吗

rose策略监听多个端口应用吗,第1张

多年前开发了一套网络库,底层实现采用IOCP(绝明派完成端口)。该库已在公司多个程序中应用;经过多次修改,长时间检验,已经非常稳定高效。

最近把以前的代码梳理了一下,又加进了一些新的思路。代码结构更加合理,性能也有所提升。打算将该库一些的知识点写出来,以供参考。

服务端要在多个端口监听,这种场合并不多见。但作为一个完善的网络库,似乎有必要支持此功能的。槐斗

传统实现方法

如果监听端口个数很少,也可以采用传统的方法。因为accept函数是阻塞的,所以要实现在n个端口监听,就需要n个线程。如果监听端口个数不多,这也不是多大问题。如果监听端口多达几十个,这种方法就有些不妥。线程也是一种资源,线程过多占用资源会增加;也会导致系统负担加重。

更可行的实现方法

实现方法有些曲折,需要一步一步分析;基本并贺的原理就是将socket句柄与事件(event)相关联。Windows有相关的函数可以对多个事件监听,当某个事件被触发,就知道相应的socket有事件到达。可以对该socket做accept,因为已经确定该socket有事件了,所以accept函数会立即返回。这样就达到对多个端口同时监听的目的。

我认为应该如此 *** 作:(我是这样做的)扮腔

1、划出类图

2、做一个组件图(选择组建的属性,将language选为java或其他的语言)

3、将组件图拖到该组件所需要组装的类图的模型上(在树形视图中 *** 作)

4、这样,在选中类图的模型点击右键时,就会有java蔡单项,在那里就毕缺孙可手链以生成java代码。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12569888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存