我的程序运行得足够快。我想看看程序创建的线程数。
ldd test
显示了库pthread的使用。但是如何找出程序创建的线程数。我只能对运行程序的PC进行命令行访问。 该平台是linux。
答案 0 :(得分:3)
也许使用strace并捕获克隆的调用?
# strace -f -e trace=clone test
它应该指示测试创建的过程。
答案 1 :(得分:1)
使用LD_PRELOAD
,您应该能够将pthread_create
足够地包裹起来,以便在每次输入时将其记录到某处。但是,该方法存在缺陷,因为它可能会在程序中引入(或暴露)不会发生的竞争,可能会导致创建更多或更少的线程。
只是在程序中跟踪这个(即如果调试版本)不是一个选项吗?