关于select和WSAEventSelect
土豆吞噬者 2010-08-03 06:03:19 问个问题,就是我采用select模型或者WSAEventSelect模型来管理套接字,有以下不解之处。
1.选择和Wait都会阻塞线程,所以这2种模型查看是否可读,可写等都是在子线程里进行的,如果发现可读,可写的情况,应该怎么通知主线程呢,PostMessage我想过,但是被否定了,因为这个只适合有窗口句柄的,而且如果要使用这种方法,势必要在主窗体里做消息处理,那样这个类就必须依赖于主窗体,这样肯定不可以。我想实现的效果是当发现可读,可写的情况时主线程会自动候调用类里面的一个方法,注意是在主线程里调用,不能阻塞子线程。
2.超时的检查,对于select的最后一个参数以及wait的等待时间,我有疑问,如果每个套接字的超时时间都不一样,那该如何判断超时了?