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.37.tar.gz (11.8 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.37-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cantok-0.0.37.tar.gz
  • Upload date:
  • Size: 11.8 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.37.tar.gz
Algorithm Hash digest
SHA256 b301d1aecf81ddcbcfdf524c9197635d88acfb59411178c4ff84ebd25e0414e7
MD5 f25e8f2ddd45e6f4bf9d7f36ce7bde15
BLAKE2b-256 5ff60def62e6bd046d90002e5f2b134bb437dc22940091cd7f521fc7007eda49

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.37.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.37-py3-none-any.whl.

File metadata

  • Download URL: cantok-0.0.37-py3-none-any.whl
  • Upload date:
  • Size: 14.1 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.37-py3-none-any.whl
Algorithm Hash digest
SHA256 691dc1e296d70a5ed03937907bf4c71120ab26403623159bcc05e79b50c6b34f
MD5 efcdc6b4f9b3831cbbf315af0c228102
BLAKE2b-256 8506223a079b553c4bcbb6492535a8a5a8d7cd4dcddfffe96e24b5de3c6f42af

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.37-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