Make Oneself More Strong

mcs51a( 高兴就写点:-),不高兴就不写 )

不要随便使用CreateThread

  CreateThread,是WIN32 最直接创建的thread API函数.但是如果在线程回调(CALLBACK)函数中使用一些标准C的函数,当线程正常退出的时候,即使你释放了所有用户资源,仍然会有资源的泄漏的隐患。主要原因是线程中都需要有额外的资源,来保证一些标准C函数的线程安全,这些资源的创建是在C的标准函数被调用的时候,但是在thread退出的时候,没法通过正常途径释放。
  如果在你的回调函数中使用一些标准C函数,最好使用_beginthreadex,_endthreadex替换掉原来的CreateThread, _endthreadex 会释放这些资源,或者AfxBeginThread(里面有调用_beginthreadex,_endthreadex)
  具体原因查看《程序员的修养,编译与链接》一书。
 

posted on 2010-09-15 10:49 mcs51a 阅读(1240) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理