Click here to Skip to main content
15,919,749 members
Home / Discussions / C#
   

C#

 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Jacob Dixon24-May-10 2:44
Jacob Dixon24-May-10 2:44 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Luc Pattyn24-May-10 4:25
sitebuilderLuc Pattyn24-May-10 4:25 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Jacob Dixon24-May-10 5:01
Jacob Dixon24-May-10 5:01 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Luc Pattyn24-May-10 5:06
sitebuilderLuc Pattyn24-May-10 5:06 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. [modified] Pin
Jacob Dixon24-May-10 5:26
Jacob Dixon24-May-10 5:26 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Luc Pattyn24-May-10 6:23
sitebuilderLuc Pattyn24-May-10 6:23 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Jacob Dixon24-May-10 6:41
Jacob Dixon24-May-10 6:41 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Luc Pattyn24-May-10 6:54
sitebuilderLuc Pattyn24-May-10 6:54 
I agree with your code, and I'm surprised it still fails at that rate.
The reason for the sleep (and the imperfection of the approach) is, basically, you would need to use a lock; however I don't like putting a lock inside a FormClosing/FormClosed event, as any bug or behavioral problem in your app would cause it not to close at all, which tends to distress the user very much (no more than an exception that crashes the app though).

You might try one more refinement: inside FormClosing, rather than a single Thread.Sleep(100), do:
// this would be unacceptable most of the time, as it:
// 1. delays the execution of a handler on the GUI thread (handlers normally should be swift)
// 2. calls DoEvents (which is evil).
// We nevertheless do this so a background thread gets ample opportunity to terminate gracefully
for(int i=0; i<5; i++) {
    if (!t4.IsAlive) break;
    Application.DoEvents();
    Thread.Sleep(100);
}


Smile | :)
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles]

I only read formatted code with indentation, so please use PRE tags for code snippets.

I'm not participating in frackin' Q&A, so if you want my opinion, ask away in a real forum (or on my profile page).

GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Jacob Dixon24-May-10 7:13
Jacob Dixon24-May-10 7:13 
GeneralRe: System.ObjectDisposedException: Cannot access a disposed object. Pin
Luc Pattyn24-May-10 7:27
sitebuilderLuc Pattyn24-May-10 7:27 
Questiontype object Pin
tek 200923-May-10 10:32
tek 200923-May-10 10:32 
AnswerRe: type object Pin
Pete O'Hanlon23-May-10 10:46
mvePete O'Hanlon23-May-10 10:46 
AnswerRe: type object Pin
tek 200923-May-10 12:28
tek 200923-May-10 12:28 
QuestionOutput type of Class Library cannot be started directly Pin
tan_chin23-May-10 9:33
tan_chin23-May-10 9:33 
AnswerRe: Output type of Class Library cannot be started directly Pin
#realJSOP23-May-10 9:58
professional#realJSOP23-May-10 9:58 
GeneralRe: Output type of Class Library cannot be started directly Pin
tan_chin23-May-10 10:28
tan_chin23-May-10 10:28 
GeneralRe: Output type of Class Library cannot be started directly Pin
Dave Kreskowiak23-May-10 18:26
mveDave Kreskowiak23-May-10 18:26 
AnswerRe: Output type of Class Library cannot be started directly Pin
Pete O'Hanlon23-May-10 10:00
mvePete O'Hanlon23-May-10 10:00 
GeneralRe: Output type of Class Library cannot be started directly Pin
tan_chin23-May-10 10:29
tan_chin23-May-10 10:29 
QuestionExcel number of rows Pin
gmhanna23-May-10 7:37
gmhanna23-May-10 7:37 
AnswerRe: Excel number of rows Pin
Abhinav S23-May-10 7:42
Abhinav S23-May-10 7:42 
QuestionArraylist Goes Null after Passing information back to Main Page from Window. Pin
PDTUM23-May-10 7:23
PDTUM23-May-10 7:23 
AnswerRe: Arraylist Goes Null after Passing information back to Main Page from Window. Pin
Abhinav S23-May-10 7:38
Abhinav S23-May-10 7:38 
GeneralRe: Arraylist Goes Null after Passing information back to Main Page from Window. Pin
PDTUM23-May-10 8:28
PDTUM23-May-10 8:28 
GeneralRe: Arraylist Goes Null after Passing information back to Main Page from Window. Pin
OriginalGriff23-May-10 9:05
mveOriginalGriff23-May-10 9:05 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.