forked from M-Labs/artiq
1
0
Fork 0

Document core device cache (#219).

This commit is contained in:
whitequark 2016-01-16 16:38:55 +00:00
parent cc22837627
commit 785b2736a0
1 changed files with 21 additions and 1 deletions

View File

@ -120,8 +120,28 @@ class Core:
@kernel @kernel
def get_cache(self, key): def get_cache(self, key):
"""Extract a value from the core device cache.
After a value is extracted, it cannot be replaced with another value using
:meth:`put_cache` until all kernel functions finish executing; attempting
to replace it will result in a :class:`artiq.coredevice.exceptions.CacheError`.
If the cache does not contain any value associated with ``key``, an empty list
is returned.
The value is not copied, so mutating it will change what's stored in the cache.
:param str key: cache key
:return: a list of 32-bit integers
"""
return cache_get(key) return cache_get(key)
@kernel @kernel
def put_cache(self, key, value): def put_cache(self, key, value):
return cache_put(key, value) """Put a value into the core device cache. The value will persist until reboot.
To remove a value from the cache, call :meth:`put_cache` with an empty list.
:param str key: cache key
:param list value: a list of 32-bit integers
"""
cache_put(key, value)