求一个用delphi编写的使用完成端口server端tcp/ip通讯的例子(300分)

  • 主题发起人 主题发起人 darkiss
  • 开始时间 开始时间
D

darkiss

Unregistered / Unconfirmed
GUEST, unregistred user!
先感谢各位了!
 
这方面的例子较多,其中Delphi自带Demos里就有,或者上一些Delphi技术站点,也有
关于此方面的例子
 
可是我没有找到阿,delphi自带的demo中没有啊,指点的具体一点,这些分数都是你的了。
 
path/delphi5/demos/internat/....
path/delphi6/demos/indy/....

 
下载ICS控件包里边有很多TCP/IP通讯方面的例子!
 
首先感谢各位的指点。可是包括dxsock,ics,indy在内我所接触的控件或程序没有一个是用
完成端口作为实现server的技术的。
我主要想看看delphi写的关于完成端口实现ip server的例子。
 
我有完全远程监控软件(我做的)包括控制对方电脑,网上教学(功能强大,比netspy等木马
监控对方电脑要快,而且和PCanywhere一样可以控制对方屏幕)等等,速度飞快,
如有需要和我联系newsword@cmmail.com需要版权费用!谢谢!需要程序(不要源程序)
3000元,需要源程序8000元。(收费标准为我们公司定的,我可以免费为大家提供问题回答!)
 
你要干嘛?自己读写端口吗?那你看看delphi的tcp控件的辕马好了。
 
唉,可能我问题的描述不清楚。

用CreateIoCompletionPort创建完成端口来进行高效率server构建,在vc下有几个例子,我想
要delphi的,已经叫了3天了,彻底失望!竟然没有。



 
实践是检验真理的惟一标准!直接访问端口效率能高多少呢?不妨用你那个VC的例子改写一个测试程序,在局域网内
用一个大的通讯量测试一下,同时你用DELPHI+ICS(或其他控件)也写一个类似的测试程序用相同的数据进行测试,
看测试结果差别有多大?

现在这个时代为了提高10%的效率浪费时间是不值得的!因为在你浪费时间的时候硬件水平的提高已经弥补了你软件
效率的低下!
 
to 战鹰:感谢您参与讨论,并给出意见,真的十分感谢。

效率问题的确存在,不同的软件架构和方法决定了最终效率上的不同。我用单线程asyncSelect
通过windows消息可以达到满足70个以下的并发连接(是并发),相应速度用户可以接受;用
多线程+线程池,可以满足200以下的并发连接,客户端的相应速度是可以的,但是server由于
线程比较多,占用资源和上下文切换耗费的cpu时间太大,使server好像死掉了一样。可是用
完成端口的话号称可以支持400-600并发连接,并且只用一个工作线程,这个技术怎能不让人
心动??我看了vc的例子,例子里bug也不少,但是已经能测试出效率了,的确不错。本来想找
个delphi的例子看看,现在好像只有自己写了。
 
不会把!我觉得你的线程似乎可能有问题,我经常写超过200个线程的程序,我的电脑是一个PIII550+128RAM
用WIN2000SERVER从来没有遇到你说的什么类似死机的情况,你的线程是不是访问了什么非线程内的公用对象?
比如TMEMO?
另外多线程方式工作似乎已经成为一种趋势,很多大型的服务器软件都在转向多线程的工作方式,我想多半是
为了提高稳定性,因为一个线程死掉了用户可以断开连接重新连接而如果采用单线程的方式工作,你的整个程
序也已经死掉了,所有的用户都要受影响!
 
还有!我已经不再使用DELPHI写这种连接数量极多的程序了,因为稳定性方面的问题,不过我也没有用VC。因为不论是DELPHI还是VC写出来的程序都只能在PC+WIN的环境下运行
而这类的程序往往是用于很多专业用途的,比如电信,而这些专业用途往往会使用到UNIX等其他非WIN平台所以我建议你要么用C要么用JAVA这样你的程序要移植就相对容易多了
而且可以卖一个好价钱!特别是用JAVA你可以理所当然的搭配给客户一个SUN工作站或服务器!再来个美其名曰什么系统集成,哈哈“金票大大的有!”
 
给了这么多!
非常感谢!
 

Similar threads

S
回复
0
查看
812
SUNSTONE的Delphi笔记
S
S
回复
0
查看
720
SUNSTONE的Delphi笔记
S
后退
顶部