Class SystemClock

java.lang.Object
cn.xuanyuanli.core.util.snowflake.SystemClock

public class SystemClock extends Object
高并发场景下System.currentTimeMillis()的性能问题的优化

System.currentTimeMillis()的调用比new一个普通对象要耗时的多(参考:System.currentTimeMillis()性能分析

System.currentTimeMillis()之所以慢是因为去跟系统打了一次交道

后台定时更新时钟,JVM退出时,线程自动回收

10亿:43410,206,210.72815533980582%

1亿:4699,29,162.0344827586207%

1000万:480,12,40.0%

100万:50,10,5.0%

Author:
lry
  • Field Details

  • Constructor Details

    • SystemClock

      SystemClock(long period)
      系统时钟
      Parameters:
      period - 期
  • Method Details

    • instance

      static SystemClock instance()
      实例
      Returns:
      SystemClock
    • scheduleClockUpdating

      void scheduleClockUpdating()
      安排时间更新
    • currentTimeMillis

      long currentTimeMillis()
      当前时间
      Returns:
      long
    • now

      public static long now()
      当前
      Returns:
      long