【发布时间】:2019-02-09 12:20:34
【问题描述】:
我没有做过太多的 C 多线程开发,今天早些时候我对库函数 clock() 很好奇。
它在多线程应用程序中的表现如何(我假设使用 pthread)?它会计算自线程启动或原始程序启动以来的时钟滴答数?
让我们假设我正在运行一个普通的双核 CPU,就像一个老实的 core 2 duo 一样,两个线程都在运行,都试图使用 clock() 来计算时间。
- 都将获得自母应用程序启动以来的时钟滴答总数或
- 自他们自己的线程启动后开始计数或
- 第三个?
【问题讨论】:
-
#1。 clock() 基于进程的开始时间,因此任何进程线程都必须(应该)返回相同的值,假设是一个高质量的 C 库。
标签: c multithreading time