]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.15] Use `time.monotonic` in OrderedDict LRU cache example (GH-150986) (#150991)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Fri, 5 Jun 2026 22:59:30 +0000 (00:59 +0200)
committerGitHub <noreply@github.com>
Fri, 5 Jun 2026 22:59:30 +0000 (01:59 +0300)
Use `time.monotonic` in OrderedDict LRU cache example (GH-150986)
(cherry picked from commit ea4c85552bb7883e1d6c808281c1f46aca86aeab)

Co-authored-by: Ilya Nikolaev <65247719+ilya-nikolaev@users.noreply.github.com>
Doc/library/collections.rst

index 25e4a71b03c6c85151124ab722d10f690f3e719b..0c727b71cf4d4b79188db206ba78751517e77eae 100644 (file)
@@ -1233,7 +1233,7 @@ variants of :func:`functools.lru_cache`:
 .. testcode::
 
     from collections import OrderedDict
-    from time import time
+    from time import monotonic
 
     class TimeBoundedLRU:
         "LRU Cache that invalidates and refreshes old entries."
@@ -1248,10 +1248,10 @@ variants of :func:`functools.lru_cache`:
             if args in self.cache:
                 self.cache.move_to_end(args)
                 timestamp, result = self.cache[args]
-                if time() - timestamp <= self.maxage:
+                if monotonic() - timestamp <= self.maxage:
                     return result
             result = self.func(*args)
-            self.cache[args] = time(), result
+            self.cache[args] = monotonic(), result
             if len(self.cache) > self.maxsize:
                 self.cache.popitem(last=False)
             return result