当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
修改线程名称并在VC调试器中显示
发布时间:2010/5/6 17:14:01 来源:城市学习网 编辑:ziteng
  #define MS_VC_EXCEPTION 0x406d1388
  typedef struct tagTHREADNAME_INFO
  {
  DWORD dwType;        // must be 0x1000
  LPCSTR szName;       // pointer to name (in same addr space)
  DWORD dwThreadID;    // thread ID (-1 caller thread)
  DWORD dwFlags;       // reserved for future use, most be zero
  } THREADNAME_INFO;
  void SetThreadName(DWORD dwThreadID, LPCTSTR szThreadName)
  {
  THREADNAME_INFO info;
  info.dwType = 0x1000;
  info.szName = szThreadName;
  info.dwThreadID = dwThreadID;
  info.dwFlags = 0;
  __try
  {
  RaiseException(MS_VC_EXCEPTION, 0, sizeof(info) / sizeof(DWORD),
  (DWORD *)&info);
  }
  except (EXCEPTION_CONTINUE_EXECUTION)
  {
  }
  }
  线程名称限制在9个ANSI字符内,调用这个函数后,将触发一个调试器异常,VC调试器将会把字符串设置为线程名称,并在调试器中显示。
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved