Berkeley DB Reference Version 5.3.33

db_env_set_func_region_map

#include <db.h>

int
db_env_set_func_region_map(int (*func_region_map)(DB_ENV *dbenv, 
    char *path, size_t len, int *is_create, void **addr),
    int (*func_region_unmap)(DB_ENV *dbenv, void *addr));  

The Berkeley DB library optionally uses the ability to create shared memory regions (which may or may not be backed by physical files). The memory will be used as a shared memory region for synchronization between Berkeley DB threads/processes; while the returned memory may be of any kind (for example, anonymous memory), it must be able to support semaphores.

The db_env_set_func_region_map() function configures all operations performed by a process and all of its threads of control, not operations confined to a single database environment.

Although the db_env_set_func_region_map() function may be called at any time during the life of the application, it should normally be called before making calls to the db_env_create or db_create methods.

The db_env_set_func_region_map() function returns a non-zero error value on failure and 0 on success.

Parameters

func_region_map

The func_region_map parameter is the function which creates shared memory regions. The function takes 5 parameters:

func_region_unmap

The func_region_unmap parameter is the function which unmaps a shared memory region. The function takes 2 parameters:

See Also

Run-time configuration