zoukankan      html  css  js  c++  java
  • 关于erlang中的timer:tc/3

    timer:tc/3对于统计函数运行时间是个很不错的函数,

    截图timer:tc/1,tc/2,tc/3的API:

    拿斐波那契数列入手做个讲解:

    -module(fib).
    -export([fib/1]).
    
    fib(0) -> 0;
    fib(1) -> 1;
    fib(N) when N>1 -> fib(N-1) + fib(N-2).

    对于统计运行时间,直接上图:

    这里的355000为MincSeconds.

    注意:这是统计从1到30,斐波那契函数运行的总时间。

    若要使变通下,要是求每个运行的时间,(若是求)计算每个函数请求的响应时间,则如下:

    ps:这里可以扩展做获取每个request的接口的请求时间.

    timer:tc/3  是在代码调优中的很好的工具以及获取某函数运行时间.

     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    下面是斐波那契数列的实现:

    -module(feibo).  
    -export([feibo_list/1,ele/1]).
    
    %% 运行:feibo:feibo_list(5).
    %% 结果示例:【1,1,2,3,5】
    
    %% 函数element主要为了计算斐波那契数列的第N个元素
    ele(1) -> 1;
    ele(2) -> 1;
    ele(N) -> ele(N-1) + ele(N-2).
    
    %% 给定一个N,求出斐波那契的前N个数
    feibo_list(N) -> feibo_list([], N).
    feibo_list(L, 0) -> L;
    feibo_list(L, N) -> feibo_list([ele(N)|L], N-1).
    

      

  • 相关阅读:
    安卓输入法
    android问题
    速查
    Iphone幻灯片效果+背景音乐
    MBProgressHUD使用
    画图
    textmate 的快捷键
    设置Table Cell的背景图的类
    Objectc 一些代码规范
    效果收集
  • 原文地址:https://www.cnblogs.com/unqiang/p/3766298.html
Copyright © 2011-2022 走看看