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.40.tar.gz (11.0 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.40-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cantok-0.0.40.tar.gz
  • Upload date:
  • Size: 11.0 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.40.tar.gz
Algorithm Hash digest
SHA256 fb9a66f18f69735b38085d5ea83879961c90ad484fe8e7c76588ce0b49835990
MD5 3e26e67e389a9c9d3c62fc521b706310
BLAKE2b-256 496f1a930f6ca0b9f0b74c9079b6865303db513369e335c8f46f4290135d1ed8

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: cantok-0.0.40-py3-none-any.whl
  • Upload date:
  • Size: 13.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.40-py3-none-any.whl
Algorithm Hash digest
SHA256 2bca0b183314d486527581463462b89a4e2ce1ffa62c2dd071ac4fc9ed745454
MD5 60dbd038f54608ca1736288590120080
BLAKE2b-256 e47f746bc4fa659cfb9e29037d8c1e50bcc77465d8631a7a8b68665d81a1fdb6

See more details on using hashes here.

Provenance

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