text: Simple decorator to cache coroutine function results
  Project description
  aiocached
  aioached is a simple package with decorator
  cachedto cache results of ordinary and coroutine functions with configurable TTL and
  Nonevalue support
  I wrote a simple helper to cache results in one service because I found it easy
  to do. As soon as I needed the helper in another project, I realized that it
  should be in a separate package published on PyPI. Having found
  aiocache
  project I was disappointed because it wasn't able to cache
  None values.
  So I had a reason to create
  aiocached.
  Table of contents
  Usage examples
  In this example
  foo(1) will be run just once:
  import asyncio from aiocached import cached @cached async def foo(n): await asyncio.sleep(n) async def main(): await asyncio.gather(*[foo(1) for _ in range(1000)]) asyncio.run(main())
  In this example
  bar(1) will be run twice because of TTL:
  import asyncio from aiocached import cached @cached(ttl=2) async def bar(n): await asyncio.sleep(n) async def main(): await bar(1) await asyncio.sleep(2) await bar(1) asyncio.run(main())
  If you want to cache an ordinary function, you can do it as well. In this
  example
  foobar(1) will be run twice for the same reason as above:
  import time from aiocached import cached @cached(ttl=2) def foobar(n): time.sleep(n) def main(): foobar(1) time.sleep(2) foobar(1) main()
  Installation
  Use pip to install:
  $ pip install aiocached
  Project details
  Release history Release notifications
  Download files
  Download the file for your platform. If you're not sure which to choose, learn more about installing packages.