Hi,
I thought about writing about a common thread deadlocking problem with Windows Forms.
I do use the Google to search solutions to my programming “problems”, but this solution I actually had to use my own brain😳
If the thread uses invokes to the GUI thread to delegate something to be done on the main thread the application’s message pump sort starts. This may result that when you close your program the simple Thread.Join() deadlocks.
So the simple solution is to do the message pumping until the thread joins:
while (!aThread.Join(1000)) // we wait for a second, then let the main thread do the message pumping..
{
Application.DoEvents();
}
Have a nice weekend..
.. and sorry if the English gets too complicated as the native language of me is Finnish – as:
Moi,
Ajattelin kirjoittaa yleisestä ongelmasta, jossa säie estää toisen säikeen toiminnan Windows Formsin kanssa.
Yleensä käytän Googlea etsiäkseni ratkaisuja ohjelmointi-“ongelmiini”, mutta tämän keksimiseen piti käyttää omia aivoja😳
Kun säie blokkaa pääsäikeen, pitää käyttää pääsäikeen viestipumppua ja kutsua Thread.Join() -metodia aikaviiveellä.
Hyvää viikonloppua..