zoukankan      html  css  js  c++  java
  • 高精度gettimeofday()函数用法

    在perl中可以通过use函数引入你需要使用的函数名称,以下是此次会用到的函数。

    #引用时间函数,包括sleep函数,gettimeofday 函数,tv_interval时间差函数
    use Time::HiRes qw(sleep gettimeofday tv_interval);

    1. gettimeofday 函数用法

    gettimeofday 函数返回的是从世纪元时间Epoch开始计算起的秒数,可精确至微秒,Epoch是指定为1970年1月1日凌晨零点零分零秒。下面是gettimeofday函数的几种用法:

    #分别返回秒和微秒两部份
    my ($s, $usec) = gettimeofday();
    
    #返回精度为微秒的总秒数
    my $full_time = gettimeofday();
    
    #返回引用地址
    my $time1 = [gettimeofday];
    
    print "$s: $s
    ";
    print "$usec: $usec
    ";
    
    print "$full_time: $full_time
    ";
    
    print "$time1:$time1
    ";

    运行结果:

    $s: 1511095372 (秒)
    $usec: 970000  (微秒)
    $full_time: 1511095372.97
    $time1:ARRAY(0x3fb440)

    2. 求时间差用法

    和gettimeofday相关的求时间差方法有以下两种:

    #求时间间隔方法一,使用tv_interval方法,参数是引用类型
    
    print "methon one
    ";
    
    #当前时间,返回值是引用
    my $time1 = [gettimeofday];
    sleep(1);
    my $time2 = [gettimeofday];
    
    print "$time1:$time1
    ";
    print "$time2:$time2
    ";
    
    my $interval_time = tv_interval($time1, $time2);
    print "$interval_time:",round($interval_time) ,"
    ";#round 四舍五入
    
    
    print "methon two
    ";
    
    #求时间间隔方法二,做减法
    my $t1 = gettimeofday();
    sleep(1);
    my $t2 = gettimeofday();
    
    print "$t1:$t1
    ";
    print "$t2:$t2
    ";
    
    my $interval =$t2 - $t1;
    print "$interval_time:",round($interval),"
    ";#round 四舍五入

    运行结果:

    methon one
    $time1:ARRAY(0x54b440)
    $time2:ARRAY(0x5ae588)
    $interval_time:1
    
    methon two
    $t1:1511095648.5815
    $t2:1511095649.58101
    $interval_time:1

    更详细可以参考文档:http://perldoc.perl.org/Time/HiRes.html

  • 相关阅读:
    对Spring的简单理解
    对Hibernate的简单认识
    对Struts的简单理解
    浅谈实体类
    xdebug配置
    hosts文件修改完无效的解决办法
    CentOS6.4 中文输入法
    python加密解密
    windows运行命令大全
    vm虚拟机centos文件共享目录设置
  • 原文地址:https://www.cnblogs.com/jinxiang1224/p/8468196.html
Copyright © 2011-2022 走看看