Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

libcache(3) [osx man page]

libcache(3)						   BSD Library Functions Manual 					       libcache(3)

NAME
libcache -- the caching framework SYNOPSIS
#include <cache.h> DESCRIPTION
The libcache framework provides a facility for creating in memory data caches. Each cache is a mutable dictionary that associates values with their keys. A cache limits the number of values it keeps according to available system memory and selects values to evict when the limit is exceeded. Recently and frequently used values are less likely to be selected for eviction. Cache keys and values should be cast as pointers. The framework provides a callback interface for supporting arbitrary types of keys and values and implements callback functions for common types. See cache_callbacks(3) for more information. Clients retrieve a value previously added to a cache using the value's key. When the client gets a value, the cache increments a reference count on the value. When the client finishes with a value retrieved from a cache they must release the value back to the cache. Referenced values are considered in use and will not be evicted. The cache may evict unreferenced values (e.g. to make room for other values or reduce its size). The number of values allowed in a cache at one time is managed by the cache framework. Cache size will grow when the system has available memory and shrink under memory pressure. Libcache is thread-safe. It is not safe to call back into the cache API from cache callback functions. SEE ALSO
cache_create(3), cache_set_and_retain(3) Darwin May 7, 2009 Darwin

Check Out this Related Man Page

libcache(3)						   BSD Library Functions Manual 					       libcache(3)

NAME
libcache -- the caching framework SYNOPSIS
#include <cache.h> DESCRIPTION
The libcache framework provides a facility for creating in memory data caches. Each cache is a mutable dictionary that associates values with their keys. A cache limits the number of values it keeps according to available system memory and selects values to evict when the limit is exceeded. Recently and frequently used values are less likely to be selected for eviction. Cache keys and values should be cast as pointers. The framework provides a callback interface for supporting arbitrary types of keys and values and implements callback functions for common types. See cache_callbacks(3) for more information. Clients retrieve a value previously added to a cache using the value's key. When the client gets a value, the cache increments a reference count on the value. When the client finishes with a value retrieved from a cache they must release the value back to the cache. Referenced values are considered in use and will not be evicted. The cache may evict unreferenced values (e.g. to make room for other values or reduce its size). The number of values allowed in a cache at one time is managed by the cache framework. Cache size will grow when the system has available memory and shrink under memory pressure. Libcache is thread-safe. It is not safe to call back into the cache API from cache callback functions. SEE ALSO
cache_create(3), cache_set_and_retain(3) Darwin May 7, 2009 Darwin
Man Page

12 More Discussions You Might Find Interesting

1. Windows & DOS: Issues & Discussions

Clearing of cache memory

Pls! will someone help me on how to clear my cache memory of my Internet browser Thanks Kayode (3 Replies)
Discussion started by: kayode
3 Replies

2. AIX

Why is my file system cache so large

Hi I have a filesystem cache which is around 20G in size and I'm a bit perplexed as to what is in it. I'm running Sybase on the machine with the db on raw volumes and a tempdb on a ramdisk. My understanding is that raw volumes are not cached and I assumed that the ramdisk is not either. Am... (1 Reply)
Discussion started by: mgibbons
1 Replies

3. UNIX for Dummies Questions & Answers

reduce buffer cache allocation?

Hi, Is it possible to reduce the amount of buffer cache in the memory allocation of a Unix Server? If so where can I do that? Also, does buffer cache count as tied up memory, or will it decrease as more memory is requested by other programs. (1 Reply)
Discussion started by: dehuang83
1 Replies

4. Linux

Linux cache

Hi all I am trying to understand the kernel memory management and require assistance in this regard. Kernel first creates the cache memory to perform any subsequent allocation to processes. I could not figure out how it is accomplished. Do kernel directly allocates any hardware cache or allocates... (0 Replies)
Discussion started by: joshighanshyam
0 Replies

5. Shell Programming and Scripting

Unloading all functions from cache

Hi I have a following function that i call from my main script in korn shell. #Unset all functions from the cache #/bin/ksh #Unset all functions from the cache init () { for func in "$(ls)" do echo "$func" unset -f $func if ; then return 1 fi (1 Reply)
Discussion started by: xiamin
1 Replies

6. Shell Programming and Scripting

values

(3 Replies)
Discussion started by: rocky1954
3 Replies

7. Red Hat

Need to release Cache memory

Right now i am using Red Hat Enterprise Linux AS release 4 and cache memory occupying around 1.5GB mentioned below, total used free shared buffers cached Mem: 2026 2021 5 0 161 1477 -/+ buffers/cache: 382 1644 ... (4 Replies)
Discussion started by: thakshina
4 Replies

8. AIX

Strange memory behavior

Hello together, i have a strange memory behavior on a AIX 7.1 System, which i cannot explain. The Filesystem-Cache will not be grow up and drops often after few minutes. I know if a file was deleted, that the same segment in the FS-Cache will also be cleared. But i am not sure if this is the... (8 Replies)
Discussion started by: -=XrAy=-
8 Replies

9. UNIX for Dummies Questions & Answers

Clearing memory cache on Linux server

i wish to clear memory cache on a production box and i was wondering what is the worst that can happen if i do? i already tested this on a backup server and everything seemed fine. but i need to know from you experts what are the worst things that can happen when i run it on a real server: ... (5 Replies)
Discussion started by: SkySmart
5 Replies

10. Programming

Memory and cache access time discrepancy

#include<stdio.h> #include<stdlib.h> #include<sys/time.h> #include<time.h> #include "rdtsc.h" #define SIZE 4*64*1024 int main() { unsigned long long a,b; int arr={0}; int i; register int r; a=rdtsc(); r=arr; b=rdtsc(); printf("1st element Access Cycles = %llu\n",b-a); (2 Replies)
Discussion started by: Vaibhavs1985
2 Replies

11. Programming

How to decrease virtual size of a process after cleaning all containers and using malloc_trim (0)?

Hello all i have simple server running on linux redhat 6.1 it is build with c++ in the server i have huge std vector that holds pointers to cache objects those cache objects holds allot of data from the DB any way ... in some point in time there is simple API that suppose to clean the... (2 Replies)
Discussion started by: umen
2 Replies

12. Programming

Synchronising cache and file

I am reading and caching some of the blocks of a large data file into program virtual memory, for processing. My question is how do I synchronise this cache with the file, for instance, if a block in the cache is updated or written to, that block has to be updated in the underlying file. If this... (1 Reply)
Discussion started by: sundaresh
1 Replies

Featured Tech Videos