如何实现只用Winsock传送文件呢?(100分)

  • 主题发起人 主题发起人 2ine
  • 开始时间 开始时间
2

2ine

Unregistered / Unconfirmed
GUEST, unregistred user!
不知道发送过去的信息是否总能接受到呢?比如C对S发了消息1,然后又发消息2,S这时接受,收到的是哪个呢?如果C在发消息2的时候S碰巧在处理消息1,等到再次接受消息3已经过来了,那么消息2是否能收到呢?

如果收不到,那么我设想的解决办法是:
一个接收消息线程,3个处理线程。
现在假设一段将文件读取,分割发送。
一个线程在用recv函数等待,发过来信息之后用 消息 通知三个处理线程中的第一个,并把接收到的东西给他处理。第二个消息通知第二个,第三个消息通知第三个,第四个再通知第一个……依此类推,最后合并文件。
但是究竟多少个处理线程才能保重流畅的接受呢??

对Winsock不太懂,各位高手帮帮忙了~
 
刚在研究WINSOCK,建议使用INDY的阻塞模式,至于线程你可以不用去考虑,这是INDY考虑的事.但是说实话INDY要研究清楚不容易,没详细的帮助,没有详细的DEMO,只有详细的代码.
注释都不全,但东西确实是好东西,好比杀鸡给你的是一套杀牛的套件.
再就是一般来说数据交换的我建议你用UDP,不停的发给你的SVR,然后SVR合并处理了一个包回复给CLIENT,要不就是2边一边一套收发.
 
E_MIAL: gotiger2008*qq.com 我发个完整的代码给你
 
后退
顶部