回答
我认为这可能是操作系统的限制 - 我想我记得在几年前我使用的XP机器上运行了80个套接字的限制。
你是否成功地在80个线程上独立运行80个套接字? – ramu 2011-05-23 05:46:43
@ramu:不,他们只是80个针对80个客户开放的winsock对象实例。该计划像往常一样事件驱动。线程将如何改变? – quamrana 2011-05-23 08:31:30
我正在编写独立进行每个套接字通信的代码。这就是为什么我选择ActiveX EXE.Client应用程序只是触发通信,ActiveX EXE会通知客户端的事件。所以我关心的是两个方面。 1.)应用程序可以创建的套接字的最大数量(从操作系统的角度来看)2. VB可以提供线程安全性的最大线程数。希望现在清楚:-) – ramu 2011-05-23 09:04:22
我会建议你放弃你的努力,并与商业解决方案。我记得在九十年代重新走上了这条道路,并且在线程运行的时候遇到了ActiveX EXE的砖墙。事情是,ActiveX EXE是单元线程的,而不是自由线程的,所以你不会得到完全独立的线程。
在现代语言中正确地完成服务器端线程已经够难了,更不用说那些不是为此目的而设计的。
我最终从Dart购买了Server Sockets。轻松实现该项目的最佳投资。性能真的很棒 - 你只受系统资源的限制。
我正在使用试用版的组件您建议。感谢您分享信息。 – ramu 2011-05-24 05:05:14
MSWINSCK.OCX是一种非常古老的做事方式;它带有Visual Basic 6.0,我记得在什么时候使用它。我不确定它的授权......显然它在32位win7下注册,但不是64位;这里有一个如何让它在64位系统上注册的链接:http://angrybyte.com/windows-hacks/mswinsck-ocx-for-64-bit-windows-7-vista/
如果你有一个MSDN订阅或类似的,使你能够下载开发工具(bizSpark等也可以),那么我相信这也会给你一个重新分配.ocx的许可。
(顺便说一句,我真的不记得了接口,但我似乎记得它是至少略高于Berkeley套接字更直观()接口。)
然而,个人推荐给您的要求:学习API,这里有很多例子,并且只需要编写一个类,以类似于.NET Socket类的方式封装它们;这些API并不那么难,而且我确定有很多在这里也有帮助,而且这可能比依靠像控制器这样过时的东西更好...
- 1. 套接字通信?
- 2. 与TCP套接字(服务器)通信
- 3. C和Python - 与套接字通信
- 4. PHP/Go套接字通信
- 5. 套接字通信失败
- 6. 通过Java套接字的InterServer通信
- 7. 套接字通信错误
- 8. CFStream IOS套接字通信
- 9. Android套接字通信
- 10. PHP套接字UDP通信
- 11. TCP套接字通信
- 12. 通过套接字的Java TCP通信
- 13. ActiveX通信
- 14. 异步套接字 - 与C#中的永久套接字双工通信
- 15. android中的安全套接字通信
- 16. 在android中的套接字通信
- 17. LAN环境下的套接字通信
- 18. 的iOS简单套接字通信
- 19. 有关套接字通信的问题
- 20. 使用套接字的TCP/IP通信
- 21. Swils中的Sails.js套接字通信?
- 22. 使用IPv4的套接字通信
- 23. 使用NIO的Java套接字通信
- 24. java中的套接字通信
- 25. Swift的调度套接字通信
- 26. javafx之间的套接字通信
- 27. LUA脚本 - 网络套接字通信
- 28. 帮助通过NAT与套接字进行通信
- 29. Python - 通过套接字与子进程进行通信
独立于什么?并安全地相对于什么? – Piskvor 2011-05-21 12:18:46
@Piskvor,彼此独立(ActiveX EXE在独立进程中运行),并且从线程安全的角度来看是安全的。 – ramu 2011-05-21 12:40:14
就我所见,线程安全并不是一个问题,除非你的意思是别的,而不是我的想法。 “我可以读取的套接字”听起来很奇怪,你是问Winsock控制实例是否被主动连接并传递数据?如果是这样,可能接近您在主程序中可以使用的数量。 – Bob77 2011-05-21 16:43:46