From 4e5488ccfad97bbccd6ea3a0453bf233d0a0120e Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Wed, 9 Sep 2009 10:40:53 +0000 Subject: Introduce the concept of content reusability. svn path=/trunk/netsurf/; revision=9563 --- Docs/ideas/cache.txt | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Docs/ideas/cache.txt b/Docs/ideas/cache.txt index 7e813e26f..fda0617a3 100644 --- a/Docs/ideas/cache.txt +++ b/Docs/ideas/cache.txt @@ -30,10 +30,20 @@ High-level cache: + Responsible for content objects. + Tracks content dependencies (and potential cycles). + Returns opaque handles to content objects. - + Manages content sharability. + + Manages content sharability & reusability (see below). + Contents with unknown types are never shared and thus get unique handles. + Content handles <> content objects: they're an indirection mechanism. +Content sharability & reusability +-------------------------------- + + If a content is shareable, then it may have multiple concurrent users. + Otherwise, it may have at most one user. + + If a content is reusable, then it may be retained in the cache for later use + when it has no users. Otherwise, it will be removed from the cache when + it has no users. + Example: retrieving a top-level resource ---------------------------------------- -- cgit v1.2.3