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.35.tar.gz (12.4 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.35-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cantok-0.0.35.tar.gz
Algorithm Hash digest
SHA256 aea7ac6adf248cdd3f2d7d336c521376d5e3be8179ee46d1e330a653eecad6ac
MD5 48fd4d6e486033f04a3e994bd5e12e64
BLAKE2b-256 220490e0f80a30a9d35864b05ab4508547d228dc263b866669a7ba37fd55f898

See more details on using hashes here.

Provenance

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

Publisher: release.yml on pomponchik/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.35-py3-none-any.whl.

File metadata

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

File hashes

Hashes for cantok-0.0.35-py3-none-any.whl
Algorithm Hash digest
SHA256 e097977bcc75cc09d42c1eea56ac38d266f403851d7243fd702b027f9dbd4195
MD5 d7285dbc6adc6b374b1d2f519bc02b82
BLAKE2b-256 ee8867f62de80ff807c3c359ab72fd36a082c5d089e0661fe2c1cd3ae38229a1

See more details on using hashes here.

Provenance

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

Publisher: release.yml on pomponchik/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