Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C# Windows Forms Sqlite
Hello guys!
 
I have a program that uses some threads at the same time that retrieve a page, wait for response, parse the response and then save the data in a DB using Sqlite.
 
Now when i want to close my program and there are these threads running it takes some time so it closes. how can i abort the page retrieval or the DB update/insert when i need to close my program, quickly?
Posted 14-Jul-11 6:51am
manchukuo1.1K
Edited 14-Jul-11 8:02am
thatraja242.6K
v3
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Use the asynchronous reader execute methods (BeginExecuteReader/EndExecuteReader instead of ExecuteReader, for instance).
  Permalink  
Comments
manchukuo at 14-Jul-11 12:19pm
   
oh i forgot i am using sqllite
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

I would say hide the form until the operation is completed and then close it. This would be adequate if the wait is at most a few seconds and then intend is to make it appears responsive...
 
BackgroundWorker can also be used and cancelled... Assuming that you can check for cancellation often enought, then the background task would be cancelled soon.
 
If you have a single long operation, then you might consider splitting that operation into multiple ones...
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 295
1 DamithSL 265
2 CPallini 235
3 Maciej Los 190
4 George Jonsson 170
0 OriginalGriff 5,415
1 DamithSL 4,422
2 Maciej Los 3,820
3 Kornfeld Eliyahu Peter 3,470
4 Sergey Alexandrovich Kryukov 2,911


Advertise | Privacy | Mobile
Web02 | 2.8.141216.1 | Last Updated 16 Jul 2011
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100