DB_ENV->set_thread_id_string()
#include <db.h>
int
DB_ENV->set_thread_id_string(DB_ENV *dbenv,
char *(*thread_id_string)(DB_ENV *dbenv,
pid_t pid, db_threadid_t tid, char *buf)); Declare a function that formats a process ID and thread ID identifier pair for display into a caller-supplied buffer. The function must return a reference to the caller-specified buffer. The DB_ENV->set_thread_id_string() method supports the DB_ENV->set_thread_id() method.
The DB_ENV->set_thread_id_string() method configures operations performed using the specified DB_ENV handle, not all operations performed on the underlying database environment.
The DB_ENV->set_thread_id_string() method may be called at any time during the life of the application.
The DB_ENV->set_thread_id_string() method returns a non-zero error value on failure and 0 on success.
Parameters
thread_id_string
The thread_id_string parameter is a function which returns a buffer in which is an identifier pair formatted for display. The function takes four arguments:
dbenvThe dbenv parameter is the enclosing database environment handle, allowing application access to the application-private fields of that object.
pidThe pid argument is a process ID.
tidThe tid argument is a thread ID.
bufThe buf argument is character array of at least DB_THREADID_STRLEN bytes in length, into which the identifier pair should be formatted.
If no thread_id_string function is specified, the default routine displays the identifier pair as "pid/tid", that is, the process ID represented as an unsigned integer value, a slash ('/') character, then the thread ID represented as an unsigned integer value.
Errors
The DB_ENV->set_thread_id_string() method may fail and return one of the following non-zero errors:
EINVAL
An invalid flag value or parameter was specified.