Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C中获取时间持续时间_C_Timer_Time.h - Fatal编程技术网

如何在C中获取时间持续时间

如何在C中获取时间持续时间,c,timer,time.h,C,Timer,Time.h,假设我有一个线程使用套接字处理HTTP连接,我需要以某种方式获得处理此连接所需的时间。timeAfterConnection-timeBeforeConnection 我知道我可以使用类似timer_gettime的API,但在谷歌搜索之后,我没有找到任何关于如何做到这一点的工作示例 谁能给我一个C代码中的时间消逝的例子?< /P>你想用C还是C++?这很重要,因为答案可能千差万别。我认为你不需要时间。试试看时钟。你只需要在连接之前和之后调用它,减去两次。你想要C还是C++?这很重要,因为答案可

假设我有一个线程使用套接字处理HTTP连接,我需要以某种方式获得处理此连接所需的时间。timeAfterConnection-timeBeforeConnection

我知道我可以使用类似timer_gettime的API,但在谷歌搜索之后,我没有找到任何关于如何做到这一点的工作示例


谁能给我一个C代码中的时间消逝的例子?< /P>你想用C还是C++?这很重要,因为答案可能千差万别。我认为你不需要时间。试试看时钟。你只需要在连接之前和之后调用它,减去两次。你想要C还是C++?这很重要,因为答案可能千差万别。我认为你不需要时间。试试看时钟。你只需要在连接之前和之后调用它,并减去两次。在LinuxBox上工作得很好。但Mac OSX使用未声明的标识符“CLOCK_REALTIME”时情况并非如此。有办法在Mac上工作吗?对不起,我帮不了你。对OSX一无所知:-在LinuxBox上工作得非常好。但Mac OSX使用未声明的标识符“CLOCK_REALTIME”时情况并非如此。有办法在Mac上工作吗?对不起,我帮不了你。对OSX一无所知:-
#include <time.h>

struct timespec before, after;
long elapsed_nsecs;

clock_gettime(CLOCK_REALTIME, &before);

/* handle connection */

clock_gettime(CLOCK_REALTIME, &after);

elapsed_nsecs = (after.tv_sec - before.tv_sec) * 1000000000 +
                (after.tv_nsec - before.tv_nsec);