到底什么情况下需要对VCL控件进行同步控制?(20分)

  • 主题发起人 主题发起人 mill666
  • 开始时间 开始时间
M

mill666

Unregistered / Unconfirmed
GUEST, unregistred user!
我想写个socket程序,利用WSAAsyncSelect模型,意思是定义一个网络消息WM_SOCKET,然后一有网络消息到达,马上针对不同的网络事件进行不同的处理。
我现在想在form1上放置一个控件(比如Tmemo, Trichedit, Tgrid等),一有新的客户端到达,则在改控件上增加一行,显示客户端的相关信息。
我有一个不明白的问题:就是说如果有多个客户端同时到达,或者说同时正在处理多个客户端请求,那么在对该控件操作的时候,需要对该控件进行同步处理吗??
 
你已经说明了,使用消息的方式,这种方式不用同步处理了,系统会对消息进行控制!这个方法是一个很好的方法,避开了对可视化的vcl的同步处理了!
 
多个客户端同时到达不可能,它与你连接时都是通过线程连接,而作为你的接受方已经进行过(内部)同步处理了,所以你更本不必关心
 
lb3141大侠:
为何不可能同时到达?
我用WSAAsyncSelect模型,没有创建新的线程。
另外:现在的windows socket编程,到底用哪种模型比较多?我看很多资料里面举例子都是用WSAAsyncSelect模型。
 
socket编程的时候,服务器端的listen事件会在侦听到一个客户端连接的时候就产生一个对应的线程来处理的,而不需要你手动的去做。所以你不用管!
 
后退
顶部