我在超线程cpu上进行网络编程,使用的是mfc的CSocket类
并使用CSocketFile和CArchive串行化。
当我把BIOS里的超线程选项关闭后,程序一切正常。
但是打开超线程功能后,Socket就变得非常不稳定
有时能收到数据,有时候就收不到,一般是收到几次数据后这个socket就像
死了一样,再也收不到数据了。
肯定不是cpu的问题,我在很多机器上都测试过,只要是超线程cpu就有问题
实在不理解这是什么原因我想我的代码应该不会有问题,否则不开超线程时应该也是不正常的
不知道有没有人遇到和我类似的情况,希望能告知我到底是什么问题,万分感谢

解决方案 »

  1.   

    我个人的感觉是CSocket本身的问题,你可以使用sdk试试,如果还不行,那就是sdk的同步可以有问题
      

  2.   

    我基本确定是mfc csocket对超线程cpu的支持有问题
    很不稳定,经常socket处于无响应状态,不知道微软有没有这方面的补丁
    还是非要等vs.net 2005出来才行呢?
    郁闷
      

  3.   

    干吗用CSocket  直接用API写也不是很困难的事
      

  4.   

    直接用API写吧,肯定不会有问题。
      

  5.   

    顶先,不过我也觉得你可以先用Windows socket API 写一个简单的接收和发送 的程序,看看有没有问题,如果没有,我想问题出在哪儿就很显然了,大伙儿说呢...
      

  6.   

    我也遇到类似的问题,client也用了csocket,看来真的跟这个有关了,我改API看看先