c语言计算线程运行时间代码 linux
时间: 2024-01-18 16:02:38 浏览: 79
计算Linux下程序运行时间
4星 · 用户满意度95%
下面是一个简单的C语言程序,用于计算线程的运行时间。该程序使用了Linux的系统调用函数获取线程的系统时间。程序首先创建一个线程,然后在线程函数中执行一些操作,并记录开始和结束时间。最后,程序计算线程的运行时间,并输出结果。
```
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
#include <sys/time.h>
void *thread_func(void *arg);
int main(int argc, char *argv[])
{
pthread_t thread;
struct timeval start_time, end_time;
double elapsed_time;
gettimeofday(&start_time, NULL);
if (pthread_create(&thread, NULL, thread_func, NULL) != 0) {
fprintf(stderr, "Error creating thread.\n");
exit(1);
}
if (pthread_join(thread, NULL) != 0) {
fprintf(stderr, "Error joining thread.\n");
exit(1);
}
gettimeofday(&end_time, NULL);
elapsed_time = (double)(end_time.tv_sec - start_time.tv_sec) +
(double)(end_time.tv_usec - start_time.tv_usec) / 1000000;
printf("Thread ran for %.6f seconds.\n", elapsed_time);
return 0;
}
void *thread_func(void *arg)
{
// do some work here
return NULL;
}
```
阅读全文