Skip to main content

Implementation of the "Cancellation Token" pattern

Project description

Downloads Downloads Coverage Status Lines of code Hits-of-Code Test-Package Python versions PyPI version Checked with mypy Ruff DeepWiki

logo

Cancellation Token is a pattern that allows us to cancel calculations that we no longer need. It is implemented out of the box in many programming languages, for example in C# and in Go. However, there was still no sane implementation in Python, until the cantok library appeared.

Quick start

Install it:

pip install cantok

And use:

from random import randint
from cantok import ConditionToken, CounterToken, TimeoutToken

token = ConditionToken(lambda: randint(1, 100_000) == 1984) + CounterToken(400_000, direct=False) + TimeoutToken(1)
counter = 0

while token:
  counter += 1

print(counter)

Read more in the documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cantok-0.0.42.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cantok-0.0.42-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file cantok-0.0.42.tar.gz.

File metadata

  • Download URL: cantok-0.0.42.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cantok-0.0.42.tar.gz
Algorithm Hash digest
SHA256 f978b618136867902b1a1d22afc445052bbb871294abe24693fe8000a4c516e3
MD5 efeaa5d4ae286ec55db964e21553f8ee
BLAKE2b-256 ba709019a696f73ec219d7a89dee63e6f17aea8cb01cf95b3a02733a05d392ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.42.tar.gz:

Publisher: release.yml on mutating/cantok

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cantok-0.0.42-py3-none-any.whl.

File metadata

  • Download URL: cantok-0.0.42-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cantok-0.0.42-py3-none-any.whl
Algorithm Hash digest
SHA256 6ca012cc888c08a07283dadf163c847121e0fa5f3dfc1f9fc7edfc35135f6579
MD5 7f00e2df99803b1ca129f43d87e1e35e
BLAKE2b-256 ae384fa2ee4b5fe6e972d3f9e5271d2b22865da43510cfcfbf9504fcb2c0ff5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.42-py3-none-any.whl:

Publisher: release.yml on mutating/cantok

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page