如何使建立的socket变为阻塞方式 很急 ( 积分: 50 )

  • 主题发起人 主题发起人 liujiandong
  • 开始时间 开始时间
L

liujiandong

Unregistered / Unconfirmed
GUEST, unregistred user!
我建立一个socket接收udp报文,用recvfrom函数接收,因为delphi默认的
是非阻塞方式,我如何使socket变为阻塞方式,这样recvfrom函数就可以
等待接收了。
 
我建立一个socket接收udp报文,用recvfrom函数接收,因为delphi默认的
是非阻塞方式,我如何使socket变为阻塞方式,这样recvfrom函数就可以
等待接收了。
 
不要直接用阻塞方式,否则程序在异常情况下可能出现假死
在数据并发量不是非常大的情况下,可以使用事件机制,通过WSAWaitForMultipleEvents()进行事件等待,等到有指定事件(例如accept,recv等事件)触发或者超时以后,执行响应处理,这样在异常或者是用户需要退出程序时可以正常操作,不会出现阻塞后无法响应的情况
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部