*** DRAFT ***

SQLite Requirement Matrix Details
mutex_methods.html

Index Summary Markup Original


R-49959-19447-21859-18883-29920-55804-31442-61320 tcl slt th3 src

The xMutexInit method defined by this structure is invoked as part of system initialization by the sqlite3_initialize() function.

/* IMP: R-49959-19447 */
# EVIDENCE-OF: R-49959-19447 The xMutexInit method defined by this
# structure is invoked as part of system initialization by the
# sqlite3_initialize() function.

R-28676-32830-52785-15539-23546-23390-27594-39349 tcl slt th3 src

The xMutexInit routine is called by SQLite exactly once for each effective call to sqlite3_initialize().

/* IMP: R-28676-32830 */
# EVIDENCE-OF: R-28676-32830 The xMutexInit routine is called by SQLite
# exactly once for each effective call to sqlite3_initialize().

R-43713-34954-61284-51343-43182-28146-52130-40042 tcl slt th3 src

The xMutexEnd method defined by this structure is invoked as part of system shutdown by the sqlite3_shutdown() function.

/* IMP: R-43713-34954 */
# EVIDENCE-OF: R-43713-34954 The xMutexEnd method defined by this
# structure is invoked as part of system shutdown by the
# sqlite3_shutdown() function.

R-06483-27112-61838-60600-31039-16842-06931-49767 tcl slt th3 src

The xMutexEnd() interface is invoked exactly once for each call to sqlite3_shutdown().

/* IMP: R-06483-27112 */
# EVIDENCE-OF: R-06483-27112 The xMutexEnd() interface is invoked
# exactly once for each call to sqlite3_shutdown().

R-27741-36039-35312-26646-43562-16753-08652-02657 tcl slt th3 src

The remaining seven methods defined by this structure (xMutexAlloc, xMutexFree, xMutexEnter, xMutexTry, xMutexLeave, xMutexHeld and xMutexNotheld) implement the following interfaces (respectively):

/* IMP: R-27741-36039 */
# EVIDENCE-OF: R-27741-36039 The remaining seven methods defined by this
# structure (xMutexAlloc, xMutexFree, xMutexEnter, xMutexTry,
# xMutexLeave, xMutexHeld and xMutexNotheld) implement the following
# interfaces (respectively): sqlite3_mutex_alloc() sqlite3_mutex_free()
# sqlite3_mutex_enter() sqlite3_mutex_try() sqlite3_mutex_leave()
# sqlite3_mutex_held() sqlite3_mutex_notheld()

R-40745-32628-44360-54833-19873-28133-21062-02308 tcl slt th3 src

However xMutexAlloc() may use SQLite memory allocation for a fast or recursive mutex.

/* IMP: R-40745-32628 */
# EVIDENCE-OF: R-40745-32628 However xMutexAlloc() may use SQLite memory
# allocation for a fast or recursive mutex.

R-53900-18983-14254-27441-52776-55824-16298-22482 tcl slt th3 src

SQLite will invoke the xMutexEnd() method when sqlite3_shutdown() is called, but only if the prior call to xMutexInit returned SQLITE_OK.

/* IMP: R-53900-18983 */
# EVIDENCE-OF: R-53900-18983 SQLite will invoke the xMutexEnd() method
# when sqlite3_shutdown() is called, but only if the prior call to
# xMutexInit returned SQLITE_OK.