Tito, Thanks for that. I've had a look but it doesn't really help. The two main questions are:
1.) Why do I need a separate sqlite pointer for each thread, if I am protecting access to it? 2.) Even aside from this, I am using multiple threads to access the database, each opens it when it needs it, and this is protected by a critical section, so I have a separate pointer per thread and only one thread is accessing the DB at a time. Why do I get "Can't open database" error? Is this something to do with the filesystem locking? Perhaps sleeping for a few milliseconds might help? Regards, Steve -----Original Message----- From: Tito Ciuro [mailto:[EMAIL PROTECTED] Sent: Thursday, June 10, 2004 4:13 PM To: Drew, Stephen Cc: '[EMAIL PROTECTED]' Subject: Re: [sqlite] Can't Open Database File Hi Stephen, Check this: http://www.sqlite.org/cvstrac/wiki?p=MultiThreading Regards, -- Tito On 10 jun 2004, at 17:05, Drew, Stephen wrote: > From the SQLite FAQ: > > "Threadsafe" in the previous paragraph means that two or more threads > can run SQLite at the same time on different "sqlite" structures > returned from separate calls to sqlite_open(). It is never safe to use > the same sqlite structure pointer simultaneously in two or more > threads. > > Is it still not safe to use the same SQLite structure pointer in two > or more threads if they are protecting against concurrent use? > > Regards, > Steve > > -----Original Message----- > From: Drew, Stephen [mailto:[EMAIL PROTECTED] > Sent: Thursday, June 10, 2004 3:38 PM > To: '[EMAIL PROTECTED]' > Subject: [sqlite] Can't Open Database File > > Hi there, > > I am having a problem with accessing my SQLite database. > > I have a certain number of worker threads that access the SQLite > database, protected by a critical section. > > The database is already open prior to this. Each thread attempts to > insert a row protected by the critical section. This works fine for > about thirty rows, but then I get a "Can't open database file" error. > > Does anyone have any clues to what might be going on? > > Many thanks, > Steve > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]