代码之家  ›  专栏  ›  技术社区  ›  Thunfische

客户端中的运行时间不工作TCP套接字

  •  0
  • Thunfische  · 技术社区  · 8 年前

    客户端的工作方式如下

    clock_t s, f;
    
    while(TRUE){
        write
        s_time = clock()
    
        read    
        f_time = clock();
    
        double client_time = (double)(f_time - s_time) / CLOCKS_PER_SEC;
        fprintf(stderr, "ct = %lf\n", client_time);
    }
    

    在我向服务器发送消息后,计时器立即启动,当客户端从服务器读取消息时,计时器停止。在服务器上,回复clien需要5到10秒。这是我的问题。客户机中的计时器只显示很短的时间。只有0.0000085左右。我该如何保持真实的运行时间?

    1 回复  |  直到 8 年前
        1
  •  1
  •   user58697    8 年前

    clock 测量CPU时间,即CPU执行代码所花费的时间。但是,您的代码主要是 利用CPU:当 read 正在等待数据到达。

    要测量墙壁经过的时间,请使用 gettimeofday 而不是 时钟 .