1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00

Change the documentation to explain that a database handle can only be

used in the same thread in which it was created.  Ticket #1272. (CVS 2521)

FossilOrigin-Name: 59c95731f70ed9b9e135584f62d0a2b0f1a3bb96
This commit is contained in:
drh
2005-06-16 19:48:39 +00:00
parent cf5f58fa3e
commit 13aebc66f2
4 changed files with 32 additions and 20 deletions

View File

@ -1,4 +1,4 @@
set rcsid {$Id: capi3ref.tcl,v 1.22 2005/06/12 22:12:39 drh Exp $}
set rcsid {$Id: capi3ref.tcl,v 1.23 2005/06/16 19:48:39 drh Exp $}
source common.tcl
header {C/C++ Interface For SQLite Version 3}
puts {
@ -846,6 +846,12 @@ int sqlite3_open16(
Whether or not an error occurs when it is opened, resources associated
with the sqlite3* handle should be released by passing it to
sqlite3_close() when it is no longer required.
The returned sqlite3* can only be used in the same thread in which it
was created. It is an error to call sqlite3_open() in one thread then
pass the resulting database handle off to another thread to use. This
restriction is due to goofy design decisions (bugs?) in the way some
threading implementations interact with file locks.
}
api {} {
@ -1048,8 +1054,8 @@ int sqlite3_step(sqlite3_stmt*);
SQLITE_MISUSE means that the this routine was called inappropriately.
Perhaps it was called on a virtual machine that had already been
finalized or on one that had previously returned SQLITE_ERROR or
SQLITE_DONE. Or it could be the case the the same database connection
is being used simultaneously by two or more threads.
SQLITE_DONE. Or it could be the case that a database connection
is being used by a different thread than the one it was created it.
}
api {} {