-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 10, 2005 12:03 PM
To: mono-devel-list@lists.ximian.com
Subject: Re: [Mono-devel-list] Leak in System.Timers.Timer?Oh, wait I see you are passing the same one by ref and setting it to null. Do you get different behaviour under windows?
Joe Audette <[EMAIL PROTECTED]> wrote:Looks to me like your creating timers in an infinite loop wich would of course continue to consume resourceswhile(true)
{
InitTimeout(ref timeout);
System.Threading.Thread.Sleep(10);
}true will always be true so you are spinning off a lot of timers right? Or am I missing something?Regards,Joe
Brian Kroeker <[EMAIL PROTECTED]> wrote:I'm seeing what looks like a memory leak somewhere in System.Timers.Timer. I'm using mono 1.1.4 on a linux system. The code I used to reproduce the problem is:
----------------------
using System;
namespace TimerTest
{
public class TimerTest
{
static void Main(string[] args)
{
TimerTest test = new TimerTest();test.Run();
}public TimerTest()
{
}public void Run()
{
System.Timers.Timer timeout = null;while(true)
{
InitTimeout(ref timeout);
System.Threading.Thread.Sleep(10);
}
}private void InitTimeout(ref System.Timers.Timer timer)
{
if(timer != null)
{
timer.Stop();
timer = null;
}timer = new System.Timers.Timer();
timer.AutoReset = false;
timer.Elapsed += new System.Timers.ElapsedEventHandler(OnTimeout);
timer.Interval = 30000;
timer.Start();
}private void OnTimeout(object source, System.Timers.ElapsedEventArgs e)
{
}
}
}
--------------Does anyone else see this problem? Am I missing something here? I see the memory usage on my system increase fairly quickly.
Thanks,
Brian
[EMAIL PROTECTED]
http://www.joeaudette.com
http://www.mojoportal.com
[EMAIL PROTECTED]
http://www.joeaudette.com
http://www.mojoportal.com
Title: Message
I haven't installed
mono on windows but using the MS Framework I don't see this behavior on windows.
Also I don't believe this could be a lapsed-listener, since I'm subscribing to
an event in the instance of timer - when all references to timer are gone
shouldn't the garbage collector get rid of the object including its event and
list of delegates? I didn't think the delegates stuck around after the event
went away.
Brian
- RE: [Mono-devel-list] Leak in System.Timers.Timer? Brian Kroeker
- Re: [Mono-devel-list] Leak in System.Timers.Timer? Rafael Teixeira
- RE: [Mono-devel-list] Leak in System.Timers.Timer? Brian Kroeker