两个共用一个线程体的线程我怎样停止其中的一个,而另一个还继续执行啊。新手上路!!!

huhaibo777 2005-03-02 07:14:34
HANDLE g_hThread[30];

DWORD WINAPI ChannelThread( LPVOID pParam)
{
AfxMessageBox("
return 0;
}

for (int i = 0; i < 2; i++)
{
g_hThread[i] = CreateThread( NULL, NULL, ChannelThread, LPVOID(0), NULL, &g_ThreadID[i]);
}

我想将g_hThread[1]结束而g_hThread[0]继续执行,我应该怎样做?
在这个线程中怎样定义只属于某一个线程的存储变量?

在这里先行谢过^_^ !
...全文
72 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ndy_w 2005-03-03
  • 打赏
  • 举报
回复
线程应该利用参数LPVOID pParam识别自己的身份
huhaibo777 2005-03-03
  • 打赏
  • 举报
回复
呵呵,忘记说谢谢了!!!
huhaibo777 2005-03-03
  • 打赏
  • 举报
回复
vcforever(霓裳羽衣.MSMVP) :
如果我不用TerminateThread(g_hThread[1], 0)这个办法,是不是就只能用挂起的办法了SuspendThread(...)使一个线程停止,而其他线程继续工作?
如果在线程内用ExitThread(...);是不是所有用此线程体的线程都将结束啊?
如果多个线成共用一个线程体,其中一个线程正常结束返回,是不是所有的县城都结束了?
vcforever 2005-03-02
  • 打赏
  • 举报
回复
多个线程共用一个线程函数,无法实现楼主所说的第二点
vcforever 2005-03-02
  • 打赏
  • 举报
回复
TerminateThread(g_hThread[1], 0)
yds 2005-03-02
  • 打赏
  • 举报
回复
直接KillThread(g_hThread[1])不行吗?
好象没有什么办法定义一个只属于某个线程的变量。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧