zoukankan      html  css  js  c++  java
  • erl0009

    读取时间erlang提供有两种方式:

        1、erlang:now();

        2、os:timestamp();

        以上两种方式由于erlang系统需要保证读取精度,当并发读取的时候会引起加锁。系统频繁读取时间将会带来性能上的一定开销;

        为避免这种不必要的开销,可以采用一种折中的办法------“低精度时间管理”。具体办法是,自己维护一个模块来管理时间,10-1000毫秒读取一次系统时间存于gen_server的状态、进程字典或者ets中。其他地方需要时间的,全都并发读取时间。这里我个人认为存入ets比较好。因为如果存入gen_server状态或进程字典,那么并发读取就需要走消息流。开销肯定会比并发读取ets大,ets数据共享,其他进程可以直接并发读取。

        参考来源:http://blog.yufeng.info/archives/2977

  • 相关阅读:
    Vue3.0
    Vue
    Vue
    Vue3.0
    Vue
    Vue
    Vue
    Vue
    Vue3.0
    万字长文|十大基本排序,一次搞定!
  • 原文地址:https://www.cnblogs.com/rsblog/p/4342234.html
Copyright © 2011-2022 走看看