none
wince5.0网络通信程序内存泄露问题 RRS feed

  • 问题

  • 我现在有一个每隔两秒发送UDP组播的线程函数,此线程函数需要分别向两个套接字发送2个组播数据包,这两个套接字分别都加入同一个组播号,但是端口号不同。线程函数内部结构如下:
    Thread()
    {
       char sendbuf1[126],sendbuf2[54];
      while(1)
    {
       等待定时器到;
      初始化发送缓存sendbuf1;
      调用sendto发送sendbuf1;
      初始化发送缓存sendbuf2;
      调用sendto发送sendbuf2;
    }
    }
    现在程序启动后只有此线程函数在运行,我看程序使用的内存,每隔几秒中内存增加4K,一直无限增加,知道系统提示内存不足。我把两个调用sendto函数的地方注释掉,再运行程序,程序内存就保持稳定,不再隔几秒增加4K。我觉得程序没有什么问题,不知道是不是wince5.0内部的bug哦
    2010年1月28日 2:44

全部回复