【发布时间】:2011-06-19 13:33:07
【问题描述】:
背景:我正在开发一个被许多程序使用的日志库。
我为每个线程分配了一个人类可读的名称,主线程应该得到“main”,但我希望能够从库中检测到该状态,而不需要在每个 main() 函数的开头编写代码.
另请注意:库代码并不总是首先从主线程输入。
【问题讨论】:
-
如何获得其他人类可读的名称?
-
更具体地说,
main不符合的模式是什么? -
系统中的大多数线程仅以少数几种方式启动。那里有可以依赖虚拟 std::string name() 函数的通用代码。但是主线程是不同的。
-
如果您可以在每个其他线程启动时为其注册一个名称,那么如果没有注册名称,也许您可以假设一个线程是
main?