不知我说的对不对,请高手指正!(50分)

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

masm

Unregistered / Unconfirmed
GUEST, unregistred user!
以前写过用异步通信(TServerSocket、TClientSocket)的程序,感觉消息驱动的异步方式真的是太简单了,微软万岁!!!
现在手头有了一台多CPU 1G内存的服务器,想试试书上所谓的更简单“阻塞方式”,结果发现,真的是太难了!!
在下认为:为什么多线程就要用阻塞方式??也可以在线程内使用消息驱动啊,服务器端和客户端的线程一一对应,消息驱动,
那不是编写效率和CPU利用率兼顾了么?有没有这样的控件?
还有,TServerSocket和TClientSocket控件内核是不是就是这样实现的??
 
我曾试过客户端用nonBlocking,服务端用多线程的,结果发现,只发一条消息时,没有问
题,但如果同时发多条消息,服务端就会收到多条最后一条的消息。而如果多个客户端同
时发送的话,就会在接收时引起混乱,各条消息的内容互相交叉混杂。
 
后退
顶部