5.4 Cache Table

► |  | Web Server: HTTP Server

1 | Dispatching Server
2 | Dispatchers
3 | Launching Servers
4 | Web Servers
5 | Internal APIs
6 | Troubleshooting and Tips
| Index

▼ | 5 | Internal APIs

5.1 | Timers
5.2 | Connection Manager
5.3 | Serializable Closures
5.4 | Cache Table
5.5 | MIME Types
5.6 | Serialization Utilities
5.7 | URL Param
5.8 | GZip
5.9 | Miscellaneous Utilities

On this page:

make-cache-table
cache-table-lookup!
cache-table-clear!
cache-table?

top contents ← prev up next →

### 5.4 Cache Table🔗ℹ

(require web-server/private/cache-table)
| package: web-server-lib

This module provides a set of caching hash table functions.

> procedure (make-cache-table) → cache-table?

Constructs a cache-table.

> procedure (cache-table-lookup! ct id mk) → any/c
> ct : cache-table?
> id : symbol?
> mk : (-> any/c)

Looks up id in ct. If it is not present, then mk is called to construct the value and add it to ct.

> procedure (cache-table-clear! ct [entry-ids finalize]) → void?
> ct : cache-table?
> entry-ids : (or/c false/c (listof symbol?)) = #f
> finalize : (-> any/c void?) = void

If entry-ids is #f, clears all entries in ct. Otherwise, clears only the entries with keys in entry-ids. The procedure finalize is invoked on each entry before it is cleared.

Changed in version 1.3 of package web-server-lib: Added optional argument for list of entry keys.
Changed in version 1.3: Added optional argument for finalizer procedure.

> procedure (cache-table? v) → boolean?
> v : any/c

Determines if v is a cache table.
top contents ← prev up next →