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.38.tar.gz (10.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.38-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cantok-0.0.38.tar.gz
  • Upload date:
  • Size: 10.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.38.tar.gz
Algorithm Hash digest
SHA256 91249c8f894e2b468c8b9baea31c57a5193df1f74937f6e329d15157b18ceaed
MD5 0e61018b423574e8aa170cb8eff023b4
BLAKE2b-256 9f5759dc0515e9470e0938c53a094eb1311437f09272f3e16e6ac4698ec7e018

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: cantok-0.0.38-py3-none-any.whl
  • Upload date:
  • Size: 12.8 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.38-py3-none-any.whl
Algorithm Hash digest
SHA256 1d88d088d6e77224f35f40aa1ce29766524afd2759ff217329d5f799ccd4a77d
MD5 6555da25b5be29132aef11479bda90cf
BLAKE2b-256 58a58886af1f2f7144df8c23b7e6c5f67ec2bd11a513891899d2d792198a771f

See more details on using hashes here.

Provenance

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