有两个问题,希望高手能给于解答。
winsock是数组,我的是服务端,有N个客户端。
问题1:客户端1连接后
winsock(N).GetData a (//假设a=1)
需要对a进行处理,如果在a还没处理完成的时候,客户端2就发送数据过来。那么winsock(N).GetData a //假设(a=2)如果是这样,那a的值就变了。我的理解的错吗?需要怎样解决这个问题?是否应该
dim a(1-N)问题2:
winsock产生了N个连接,这N个连接是不是多线程的?比如 winsock(1)接收到数据后,正在处理数据的过程中,winsock(2)接收到数据,也需要进行与winsock(1)同样的数据处理,那是否等winsock(1)处理完后才处理winsock(2)的?还是同时进行处理?
请问题指点小弟。
winsock是数组,我的是服务端,有N个客户端。
问题1:客户端1连接后
winsock(N).GetData a (//假设a=1)
需要对a进行处理,如果在a还没处理完成的时候,客户端2就发送数据过来。那么winsock(N).GetData a //假设(a=2)如果是这样,那a的值就变了。我的理解的错吗?需要怎样解决这个问题?是否应该
dim a(1-N)问题2:
winsock产生了N个连接,这N个连接是不是多线程的?比如 winsock(1)接收到数据后,正在处理数据的过程中,winsock(2)接收到数据,也需要进行与winsock(1)同样的数据处理,那是否等winsock(1)处理完后才处理winsock(2)的?还是同时进行处理?
请问题指点小弟。
解决方案 »
- 这个数据串怎么提取?
- 关于vb 播放rm文件
- 求助:远程连接数据库时输入数据库服务器的IP地址,怎样得到数据库信息?
- 怎样写一个触发器来控制表中某记录如果其“审核”字段为“已审核”就不能被修改?
- 找到工作了!可能以后不会用vb
- 十万火急~~在线等~!有意者进贴~
- 我在win2003用VB6做托盘程序,可总提示“找不到DLL入口点 shell_notifyiconA in shell32.dll”,这是怎么回事?
- 这个问题我解决不了。Help me!
- ASP如何判断文件存在
- 寻找会asp和vb,性格懒散,不愿受时间约束,喜爱在家做事,空闲时间很多的人。
- 进程管理器,开源哦
- vb用shell语句调用winrar,怎么判断压缩完成?
vb调用activex控件, 比如winsock, 在产生连接的时候, activex控件(也就是一个dll)
会生成多个线程, 他们同时接收数据, 发送数据.
但是, 收到数据的时候, 他们会给vb主线程一个消息,
当vb的主线程在空闲的时候(即经过一次消息循环), 变会调用那个winsock_dataarr..事件
, 收到数据后, 跟发送这个消息有关的线程的缓冲区便会把他删除.
可能在处理这个数据时, 另一个连接的线程也收到了数据, 给vb主线程发送了线程消息.
但是没关系, 主线程会在下一个空闲的时候再处理.现在应该明白问题1的答案了吧