# DbEnv::memp_trickle

`

###

    #include <db_cxx.h>

    int
    DbEnv::memp_trickle(int pct, int *nwrotep);

# Description

The DbEnv::memp_trickle method ensures that at least pct percent of the pages in the shared memory pool are clean by writing dirty pages to their backing files. If the nwrotep argument is non-NULL, the number of pages that were written to reach the correct percentage is returned in the memory location it references.

The purpose of the DbEnv::memp_trickle function is to enable a memory pool manager to ensure that a page is always available for reading in new information without having to wait for a write.

The DbEnv::memp_trickle method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on failure, and returns 0 on success.

# Errors

The DbEnv::memp_trickle method may fail and throw an exception or return a non-zero error for the following conditions:

EINVAL
  An invalid flag value or parameter was specified.

The DbEnv::memp_trickle method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods. If a catastrophic error has occurred, the DbEnv::memp_trickle method may fail and either return DB_RUNRECOVERY or throw an exception encapsulating DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

### Classes

DbEnv, DbMpoolFile

# See Also

DbEnv::set_mp_mmapsize, DbMpoolFile::close, DbMpoolFile::get, DbMpoolFile::open, DbMpoolFile::put, DbMpoolFile::set, DbMpoolFile::sync, DbEnv::memp_register, DbEnv::memp_stat, DbEnv::memp_sync and DbEnv::memp_trickle.`

Copyright Sleepycat Software