时间分析器模块¶
提供用于时间性能分析的工具
-
moprofiler.time.
__time_profiler_pool
= {}¶ 用来存储时间分析器的池子
-
moprofiler.time.
_make_time_profiler_getter
(self_or_cls=None)[源代码]¶ 生成时间分析器获取器
参数: self_or_cls (TimeProfilerMixin) – 时间分析器 Mixin 实例或类
-
moprofiler.time.
time_profiler_getter
(name, raise_except=True, force_new_profiler=False)¶ 用于存储装饰函数、静态方法时创建的时间分析器
-
class
moprofiler.time.
TimeProfilerMixin
[源代码]¶ 基类:
moprofiler.base.ProfilerMixin
时间分析器 Mixin 类
用以提供复杂的时间分析功能,如:
- 针对需要多次调用的方法进行累加分析的场景
- 在一次代码执行流程中同时分析多个方法,并灵活控制分析结果的输出
-
moprofiler.time.
time_profiler
(_function=None, name='', print_res=True, stream=None, output_unit=None, stripzeros=False, force_new_profiler=False)[源代码]¶ 时间分析器装饰器
逐行分析被装饰函数每行的执行时间
参数: - _function (types.FunctionType or types.MethodType) – 被封装的对象,由解释器自动传入,不需关心
- name (str) – 关键字参数,被装饰方法所使用的时间分析器名称,默认为使用被装饰方法的方法名
- print_res (bool) – 是否在被装饰对象退出后立刻打印分析结果,默认为 True 。 当需要将多次调用结果聚集后输出时,可设为 False ,并通过 Mixin 中的 time_profiler 进行结果输出
- stream (object) – 输出方式,默认为 stdout ,可指定为文件
- output_unit (str) – 输出单位
- stripzeros (bool) – 是否去零
- force_new_profiler (bool) – 是否强制使用新的分析器,默认为
否
返回: 装饰后的函数或方法
返回类型: types.FunctionType or types.MethodType