跳转到主要内容

原子计数器

项目描述

Atomic Counter

Build Status Coverage License PyPI

概述

atomic-counter是一个Rust库,用于生成单调递增的整数序列。根据计数器的特定配置,生成的序列将产生从纳秒级开始的唯一数字,无论内存状态如何。例如,如果您在进程退出后重新创建一个计数器,并在1纳秒后再次创建,您的序列仍然保证是单调递增的(但会有间隔)。

用法

from atomic_counter import Counter

c = Counter(offset_in_nanos, base_in_nanos)

c.next()  # generate next number in sequence

在这里,base是计数器的0值(例如,一个以纳秒为单位的纪元,以保持数字尽可能小,如果您不需要回到1970年)。offset是从base开始的纳秒数。

如果未设置,base将默认为纳秒的2010-01-01offset将默认为0,这意味着计数器将从(现在 - 2010/01/01) as 纳秒开始。

要创建例如每日计数器,请传入base=today in 纳秒。由于这是每天重置的序列的常见情况,提供了一个便利函数def daily() -> Counter:

项目详情


下载文件

下载适合您的平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分布

atomic_counter-0.1.3.tar.gz (17.9 kB 查看哈希值)

上传时间 源码

构建的发行版

atomic_counter-0.1.3-cp37-abi3-win_amd64.whl (115.6 kB 查看哈希值)

上传时间 CPython 3.7+ Windows x86-64

atomic_counter-0.1.3-cp37-abi3-win32.whl (113.3 kB 查看哈希值)

上传时间 CPython 3.7+ Windows x86

atomic_counter-0.1.3-cp37-abi3-musllinux_1_2_x86_64.whl (295.0 kB 查看哈希值)

上传时间 CPython 3.7+ musllinux: musl 1.2+ x86-64

atomic_counter-0.1.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (234.1 kB 查看哈希值)

上传时间 CPython 3.7+ manylinux: glibc 2.17+ x86-64

atomic_counter-0.1.3-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (243.5 kB 查看哈希值)

上传时间 CPython 3.7+ manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

atomic_counter-0.1.3-cp37-abi3-macosx_11_0_arm64.whl (201.8 kB 查看哈希值)

上传时间 CPython 3.7+ macOS 11.0+ ARM64

支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面