我在進程中由AfxBeginThread 生成一個線程,我想知道,
如何在我的這個進程中結束生成的線程?
謝謝了!!!

解决方案 »

  1.   

    高手幫幫忙啊,我知道這不是一個難題啊!
    用return 或 AfxEndThread 只能在線程本身中使用
    結束本線程,而我是想在生成該線程的進程中
    結束該線程,如何做法?
      

  2.   

    从线程内部结束线程 ExitThread
    从线程外部结束线程 TerminateThread
      

  3.   

    好像不可以啊
    DWORD tid=0;
    HANDLE ht;ht=CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)thread_func, NULL, 0, &tid);
    TerminateThread(ht, -1);可是用AfxBeginThread 沒有可以得到ht 這個句柄,所以不能用TerminateThread();
    這個東東
      

  4.   

    你最好设置一个全局变量,例如
    BOOL STOPIT=FALSE;
    再你的线程函数里加入查询语句
    if(STOPIT)
    ExitThread(retValue);
    什么时候要关闭线程,在主线程里把
    STOPIT=TRUE
      

  5.   

    同意xiaoshao_0_0(xiaoshao),用TerminateThread的话,容易引起子线程中的资源泄漏。
      

  6.   

    Thanks too much, Let me try