Solved

Finalizer Thread Warnings

Posted on 2013-01-28
4
548 Views
Last Modified: 2013-03-01
Hello.
 
A couple times a day, I see this message from the Debug Diagnostic Tool that I have running on one of my IIS App Pools:
 
"Review the callstack for the Finalizer thread to see what the finalizer is blocked on. Long running code on a Finalizer thread can increase the number of objects ready for finalization and is bad for the overall memory consumption of the process"
 
Thread 11 - System ID 5288

Entry point
  0x00000000

Create time
  1/25/2013 10:42:39 AM

Time spent in user mode
  0 Days 00:00:00.811

Time spent in kernel mode
  0 Days 00:00:01.232
 

.NET Call Stack


Function
Full Call Stack

Function

ntdll!NtDelayExecution+15
KERNELBASE!SleepEx+65
clr!__DangerousSwitchToThread+48
clr!__SwitchToThread+12
clr!SVR::GCHeap::FinalizerThreadStart+282
clr!Thread::intermediateThreadProc+4b
kernel32!BaseThreadInitThunk+e
ntdll!__RtlUserThreadStart+70
ntdll!_RtlUserThreadStart+1b

Does anyone have any ideas what this means, if it is something I should worry about, and if it is, how to go about fixing it? Thanks!
0
Comment
Question by:infotechelg
  • 2
4 Comments
 
LVL 96

Expert Comment

by:Bob Learned
ID: 38830694
In my humble opinion, I believe this to be a problem worth investigating.  This type of problem can cause memory leaks.  Are you working with COM objects (not a good idea in my opinion)?
0
 
LVL 16

Expert Comment

by:Easwaran Paramasivam
ID: 38830703
0
 

Author Comment

by:infotechelg
ID: 38903275
In my humble opinion, I believe this to be a problem worth investigating.  This type of problem can cause memory leaks.  Are you working with COM objects (not a good idea in my opinion)?

Sorry, TheLearnedOne. I don't know how I missed your post.

It's a little embarassing, but I'm not sure! I don't believe I am, but what are some common COM objects that people may use? I do access files on the network using System.IO, but I don't think that qualifies.
0
 
LVL 96

Accepted Solution

by:
Bob Learned earned 500 total points
ID: 38904841
The problem is that you don't really know unless you do some investigating.  A lot of the Visual Studio.NET IDE is COM, and you can see evidence in the framework if you use a tool like Reflector.
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

More often than not, we developers are confronted with a need: a need to make some kind of magic happen via code. Whether it is for a client, for the boss, or for our own personal projects, the need must be satisfied. Most of the time, the Framework…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question