I'm using an SQLite database to read and write to my application. In some places it has to do very large reads and writes and the application comes to a standstill for like 10 seconds while this is happening. I've tried calling showBusyCursor(), but it only works if I call that function and then set a timer to execute the sql query. But the busy cursor also freezes once the connection starts.
Why doesn't the showBusyCursor work during this time? Are there any other things I can do to the application to ensure the user that it is not frozen and just processing?
Keep in mind that I haven't actually implemented this yet, but my path is headed right in that direction in the next few days. From wh
at I have read you can access the database in two modes: synchronous and asynchronous. From your description it sounds like you are accessing the database in synchronous mode, which will stop the application thread until the database thread is completed.
To get around that limitation you will want to run your database accesses in asynchronous mode, so that the application will continue running while the database is being accessed. What you do then is implement a listener on the database that will call a function that will hide the waiting cursor or image. Then you start the waiting indicator in the application. Once the database is done, it will trigger your listener and remove the waiting indicator, allowing the user to once again interact with your app.
Hope this helps!