Skip to main content

No project description provided

Project description

GithubCI

toasync

Convert sync function to async function and start at same time

from time import sleep, time
import asyncio
from toasync import async_


@async_
def func(name, i=1):
    print('Start function {}'.format(name))
    sleep(1)
    print('Done function {}'.format(name))


if __name__ == '__main__':
    coroutine = asyncio.gather(
        func()('1'),
        func()('2'),
        func()('3'),
    )
    start_time = time()
    asyncio.get_event_loop().run_until_complete(coroutine)
    print('Process take {} sencond'.format(time-start_time))

then

Start function 1
Start function 2
Start function 3
Done function 2
Done function 1
Done function 3
Process take 1.007418155670166 sencond

If run function as synchronous, you can call delay method

from time import sleep
from toasync import async_


@async_
def func(name, i=1):
    print('Start function {}'.format(name))
    sleep(1)
    print('Done function {}'.format(name))


if __name__ == '__main__':
    func().delay('1')
    func().delay('2')
    func().delay('3')

then

Start function 1
Done function 1
Start function 2
Done function 2
Start function 3
Done function 3

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

toasync-0.0.1.tar.gz (1.6 kB view details)

Uploaded Source

File details

Details for the file toasync-0.0.1.tar.gz.

File metadata

  • Download URL: toasync-0.0.1.tar.gz
  • Upload date:
  • Size: 1.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for toasync-0.0.1.tar.gz
Algorithm Hash digest
SHA256 7f7ce3ec70c8536d25d413cd5ce12c5394d8d72a9c47ca96ea047e5faded8b73
MD5 263a692141055c91a69e1d080ef770a5
BLAKE2b-256 18973343ebe25198e4ebecc2ef2eca47792e593693325c42aed1a16fcd2aafc1

See more details on using hashes here.

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