关于创建实例的问题

时间:2022-05-08 21:20:30
我要在一个表单中执行一个任务接收的事务.我先建立了一个监听,当我接到监听了后,我要重新建立一个新的监听,怎么处理?

5 个解决方案

#1


能否详细说明一下。比如用的VFP版本,监听什么端口,用的什么控件,什么API等

#2


我winsock做了一个通讯的程序,我要求的是:

    我先用winsock建一个实例,让他的监控我的端口,当收到端口的通信后,这个实例就开始处理数据,并同时创建另一个winsock的实例来继续监控我的端口.


----------------

我原来是用了一个最笨的办法,我在表单中创建了30个winsock实例,用一组开关来表示当前那些实例是在运行的,当一个实例接收到通信后,就把开关置为关,找出开关为开的实例来继续监听,后开始处理数据,处理完成之后,就把开关置为开.

我觉得这种方式太笨,想改进一下.

#3


应该不用这么麻烦,Winsock 还没有实际应用过。

不过可以提供一些资料给你:

简单的Winsock应用程式设计
http://www.chinaitpower.com/A/2005-01-29/106435.html

揭开 Winsock 的神秘面纱
http://hi.baidu.com/derekshu/blog/item/34e596264ba3e5178a82a1c9.html

Vfp利用MyWinsock发送信息或文件
http://www.meizvfp.com/bbs/dispbbs.asp?boardID=11&ID=55334&page=1

#4


WINSOCK控件是winsock1.1封装的,我建议你不要用,只能做一个客户端就还差不多。而且你在一个表单放入这么多winsock控件,会把系统拖得很慢,这种方式很不好。

如果你想做一个比较健壮的服务端,实现一个高响应和一个高性能的,那么应该实现纯winsock API去创建一个winsock 2.2的程序,它可以提供给你一个更多的功能和更多的选择,当然复杂性也是成倍增长的.,大概内容就是winsocket绑定一个端口就可以同时监听所有的客户端,对于你几十个客户端,并发量不是特别多的话,光是一个异步WINSOCK对你都够了。



#5


    有实例吗?能否给一个?

#1


能否详细说明一下。比如用的VFP版本,监听什么端口,用的什么控件,什么API等

#2


我winsock做了一个通讯的程序,我要求的是:

    我先用winsock建一个实例,让他的监控我的端口,当收到端口的通信后,这个实例就开始处理数据,并同时创建另一个winsock的实例来继续监控我的端口.


----------------

我原来是用了一个最笨的办法,我在表单中创建了30个winsock实例,用一组开关来表示当前那些实例是在运行的,当一个实例接收到通信后,就把开关置为关,找出开关为开的实例来继续监听,后开始处理数据,处理完成之后,就把开关置为开.

我觉得这种方式太笨,想改进一下.

#3


应该不用这么麻烦,Winsock 还没有实际应用过。

不过可以提供一些资料给你:

简单的Winsock应用程式设计
http://www.chinaitpower.com/A/2005-01-29/106435.html

揭开 Winsock 的神秘面纱
http://hi.baidu.com/derekshu/blog/item/34e596264ba3e5178a82a1c9.html

Vfp利用MyWinsock发送信息或文件
http://www.meizvfp.com/bbs/dispbbs.asp?boardID=11&ID=55334&page=1

#4


WINSOCK控件是winsock1.1封装的,我建议你不要用,只能做一个客户端就还差不多。而且你在一个表单放入这么多winsock控件,会把系统拖得很慢,这种方式很不好。

如果你想做一个比较健壮的服务端,实现一个高响应和一个高性能的,那么应该实现纯winsock API去创建一个winsock 2.2的程序,它可以提供给你一个更多的功能和更多的选择,当然复杂性也是成倍增长的.,大概内容就是winsocket绑定一个端口就可以同时监听所有的客户端,对于你几十个客户端,并发量不是特别多的话,光是一个异步WINSOCK对你都够了。



#5


    有实例吗?能否给一个?