Files

56 lines
1.7 KiB
Python

import time
from utils_v2.system import files
from utils_v2.cache_v2.async_mem_cache import AsyncMemCache
from utils_v2.cache_v2.async_disk_cache import AsyncDiskCache
import asyncio
async def main():
proj_dir = files.get_file_directory(include_filename = False)
proj_dir = files.get_parent_directory(proj_dir, depth = 1)
print("PROJ. DIR.:", proj_dir)
memcache = AsyncMemCache()
# diskcache = AsyncDiskCache(
# caching_dir = os.path.join(proj_dir, "local"),
# lock_on_read = False,
# lock_wait_timeout = 5.0,
# expiry_check_interval = 60.0
# )
cache = memcache
# print("\n\n---\n\n")
# print("EXPIRY CHECK:")
# await cache.set("k1", "v1", expiry = 3.0)
# print(await cache.get("k1"))
# time.sleep(3.1)
# print(await cache.get("k1"))
print("\n\n---\n\n")
print("DELETE CHECK:")
await cache.set("k1", "v1", expiry = 30.0)
await cache.set("k2", "v2", expiry = 30.0)
await cache.set("k3", "v3", expiry = 30.0)
print("LIST:", await cache.list_keys())
print("LIST:", await cache.list_keys(match = "k[1-2]"))
print(await cache.get("k1"))
await cache.delete("k1")
print(await cache.get("k1"))
print("LIST:", await cache.list_keys())
# print("\n\n---\n\n")
# print("COUNTING:")
# count = await cache.count("c1", expiry = 3.1)
# for i in range(10):
# time.sleep(1.0)
# count = await cache.count("c1", expiry = 3.0, raise_exception = True)
# ttl = await cache.ttl("c1")
# print(count, await cache.get("c1"), ttl)
# print("OUTSIDE LOOP!")
# print(await cache.get("c1"))
# time.sleep(3.1)
# print(await cache.get("c1"))
asyncio.run(main())