Skip to main content

High-performance promise implementation for Python

Project description

Despite the fact that this code is distributed under the MIT License, IT IS PROHIBITED to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software for any commercial or non-commercial purposes by Jet Brains and any of its subsidiaries, parent organization or affiliates.

PromisedIO

PromisedIO

PromisedIO is free and open source software released under the permissive MIT license.

You can read about promises here.

promise module

clearfreelists

clearfreelists() -> None

Clear all freelists.

deferred

deferred() -> Deferred

Create new Deferred object.

exec_async

exec_async(coro: Coroutine, context: Any = None) -> None

Start new coroutine and set the context for the new coroutine.

get_context

get_context() -> Any

Get context of current corroutine.

process_promise_chain

process_promise_chain() -> int

Process all scheduled (resolved or rejected) promises.

Returns active promise count.

run_forever

run_forever() -> None

Start simple event loop.

setfreelistlimits

setfreelistlimits(promise_limit: int = -1, promiseiter_limit: int = -1, deferred_limit: int = -1, coroutine_limit: int = -1) -> None

Update freelist limits. Default limit for each type is 1024.

Deferred

Deferred.promise

Deferred.promise() -> Promise

Get related Promise object.

Deferred.reject

Deferred.reject(value: Exception) -> None

Reject related Promise object with the given exception value.

Deferred.resolve

Deferred.resolve(value: Any) -> None

Resolve related Promise object with the given value.

Lock

Lock.new

Lock.__new__() -> Any

Create new Lock object.

Lock.acquire

Lock.acquire() -> Promise

Acquire the lock.

Lock.release

Lock.release() -> Promise

Release the lock.

Promise

Promise.catch

Promise.catch(rejected: Callable) -> Promise

The same as .then(None, rejected)

Promise.then

Promise.then(fulfilled: Callable = None, rejected: Callable = None) -> Promise

Create new Promise.

It takes up to two arguments: callback functions for the success and failure cases of the promise.

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

promisedio-promise-1.0.23.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

promisedio_promise-1.0.23-cp310-cp310-macosx_12_0_x86_64.whl (82.4 kB view details)

Uploaded CPython 3.10 macOS 12.0+ x86-64

File details

Details for the file promisedio-promise-1.0.23.tar.gz.

File metadata

  • Download URL: promisedio-promise-1.0.23.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.0 Darwin/21.3.0

File hashes

Hashes for promisedio-promise-1.0.23.tar.gz
Algorithm Hash digest
SHA256 603dbbcbe8043d98386be1fb58eb5deaa4b7aa55efb5b01ac1fca6ef8ab0c803
MD5 7b755d2c3938640082a84821a8e5869e
BLAKE2b-256 e11e04995ed7d2a8b6ddc81063f80ba33e12a52fc49f4184a3fbd266e89c87da

See more details on using hashes here.

File details

Details for the file promisedio_promise-1.0.23-cp310-cp310-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for promisedio_promise-1.0.23-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 7605b5e460a9529b52fe6b3876ea0b1e78acf60b381629eead09683bb8401494
MD5 223a06c0627a016ccf604eaf30b33ff7
BLAKE2b-256 c92040664601b739bd409d324b72fd2240e0a69f1a8542ff3d491c4e51f5d202

See more details on using hashes here.

Supported by

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