Re: Background thread with lower priority
- From: "Ginny Caughey [MVP]" <ginny.caughey.online@xxxxxxxxxxxxxx>
- Date: Mon, 11 Dec 2006 12:40:09 -0500
Thanks for the link. As I read it, since GC occurs on whatever thread is
running when GC needs collecting, the thread priority probably wouldn't
matter since that thread is running whatever its priority. At least that's
the way I hope it works.
--
Ginny Caughey
Device Application Development MVP
"Jeffry van de Vuurst" <jeffry.cwrmobility@xxxxxxxxxxxxxxxxx> wrote in
message news:uicqdLUHHHA.1240@xxxxxxxxxxxxxxxxxxxxxxx
Hi Ginny,
Here's the link:
http://www.danielmoth.com/Blog/2004/08/threads-and-threadpriority-with-net.html.
--
Jeffry van de Vuurst
CWR Mobility
www.cwrmobility.com
--
"Ginny Caughey [MVP]" <ginny.caughey.online@xxxxxxxxxxxxxx> wrote in
message news:uelq$0THHHA.1252@xxxxxxxxxxxxxxxxxxxxxxx
Jeffrey,
I have desktop apps that run worker threads on lower priorities without
problems. I don't happen to have CF apps that do, but I'd suggest just
trying it. Do you have a link to Daniel's post? He doesn't usually get
things wrong so I should read it.
--
Ginny Caughey
Device Application Development MVP
"Jeffry van de Vuurst" <jeffry.cwrmobility@xxxxxxxxxxxxxxxxx> wrote in
message news:%23R9gpwTHHHA.3468@xxxxxxxxxxxxxxxxxxxxxxx
Hi Chris,
Thanks for your reply. I guess my question was not clear enough.
It's not the GC that causes the non-responsiveness. My assumption is
that the non-responsiveness is caused by running my background sync on a
thread with the same priority as the main thread. So when the background
sync starts, both the UI and the sync are competing for the CPU cycles,
right?
That's the reason I started creating my own thread and setting the
priority lower than the main thread. However, the blog post from Daniel
Moth gives me some concerns because it discourages changing the priority
of a thread because of unexpected behavior (mentioning the garbage
collection). At least, that is my understanding of the article.
So maybe my question should be: is it ok to have a background thread
running on a lower priority so not to interfere with the GUI, or does
running on lower priority have unexpected side effects (like mentioned
in the article) and should be avoided?
Thanks,
--
Jeffry van de Vuurst
CWR Mobility
www.cwrmobility.com
--
"<ctacke/>" <ctacke[@]opennetcf[dot]com> wrote in message
news:%23hmTTPTHHHA.2632@xxxxxxxxxxxxxxxxxxxxxxx
If a GC occurs, all threads in the process are suspended. Doesn't
matter what priority any of the threads are.
Are you sure it is a GC that's causing the non-responsiveness?
--
Chris Tacke
OpenNETCF Consulting
Managed Code in the Embedded World
www.opennetcf.com
--
"Jeffry van de Vuurst" <jeffry.cwrmobility@xxxxxxxxxxxxxxxxx> wrote in
message news:eNdHtCTHHHA.4712@xxxxxxxxxxxxxxxxxxxxxxx
Hi,
I have a CF 2.0 app that uses 2 background threads. 1 for polling for
a network connection and 1 for performing a background sync.
First I used the OpenNETCF BackgroundWorker for this purpose. However,
when performing a background sync the UI became unresponsive. Now I
changed it to a regular thead using:
Thread backgroundSyncThread = new Thread(DoBackgroundSync);
backgroundSyncThread.Priority = ThreadPriority.Lowest;
backgroundSyncThread.IsBackground = true;
backgroundSyncThread.Start();
However, I read here
http://www.danielmoth.com/Blog/2004/08/threads-and-threadpriority-with-net.html,
that chaging the priority of threads may be risky because garbage
collection could run on the low priority thread.
It's an article from August 2004 but does mention CF 2.0 beta 1. Does
this still apply? And if so, what are other ways to make sure that the
(potentially long) running background thread doesn't freeze the UI? Is
doing a Thread.Sleep(0) from the worker thread effective? I've read
different stories about the effectiveness of Thread.Sleep(0)...
Thanks,
--
Jeffry van de Vuurst
CWR Mobility
www.cwrmobility.com
--
.
- Follow-Ups:
- Re: Background thread with lower priority
- From: <ctacke/>
- Re: Background thread with lower priority
- References:
- Background thread with lower priority
- From: Jeffry van de Vuurst
- Re: Background thread with lower priority
- From: <ctacke/>
- Re: Background thread with lower priority
- From: Jeffry van de Vuurst
- Re: Background thread with lower priority
- From: Ginny Caughey [MVP]
- Re: Background thread with lower priority
- From: Jeffry van de Vuurst
- Background thread with lower priority
- Prev by Date: problem with printing via bluetooth printer adapter
- Next by Date: Re: Background thread with lower priority
- Previous by thread: Re: Background thread with lower priority
- Next by thread: Re: Background thread with lower priority
- Index(es):
Relevant Pages
|
|