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 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 603dbbcbe8043d98386be1fb58eb5deaa4b7aa55efb5b01ac1fca6ef8ab0c803 |
|
MD5 | 7b755d2c3938640082a84821a8e5869e |
|
BLAKE2b-256 | e11e04995ed7d2a8b6ddc81063f80ba33e12a52fc49f4184a3fbd266e89c87da |
File details
Details for the file promisedio_promise-1.0.23-cp310-cp310-macosx_12_0_x86_64.whl
.
File metadata
- Download URL: promisedio_promise-1.0.23-cp310-cp310-macosx_12_0_x86_64.whl
- Upload date:
- Size: 82.4 kB
- Tags: CPython 3.10, macOS 12.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.10.0 Darwin/21.3.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7605b5e460a9529b52fe6b3876ea0b1e78acf60b381629eead09683bb8401494 |
|
MD5 | 223a06c0627a016ccf604eaf30b33ff7 |
|
BLAKE2b-256 | c92040664601b739bd409d324b72fd2240e0a69f1a8542ff3d491c4e51f5d202 |