Re: Possible memory leak in SQLDataReader().
- From: "Miha Markic [MVP C#]" <miha at rthand com>
- Date: Wed, 22 Feb 2006 08:49:26 +0100
Since SqlDataReader implements IDisposable, you should call Dispose after
you are done with.
--
Miha Markic [MVP C#]
RightHand .NET consulting & development www.rthand.com
Blog: http://cs.rthand.com/blogs/blog_with_righthand/
"Ken Varn" <nospam> wrote in message
news:uO1yq1xNGHA.1032@xxxxxxxxxxxxxxxxxxxxxxx
I have a managed C++ application that is exhibiting a memory leak. I
isolated the leak down to a section of code that basically uses a managed
ADO.NET SQLDataReader object. The leak seems to occur on the
ExecuteReader() call. I am calling this method over and over again at
fairly rapid intervals. The Close() method of the reader is always called
when I am done with the SQLDataReader. Can someone tell me if there is a
way around this leak or if there is a fix out there?
Sample Code:
SqlCommand *SQLCmd = __gc new SqlCommand();
SqlDataReader *SQLReader;
SQLCmd->Connection = MyConnectionObject;
SQLCmd->CommandText = "sp_SelectImageEventID @nImageType = 1"; // My
stored procedure
SQLReader = SQLCmd->ExecuteReader();
if (SQLReader->HasRows)
{
// Do stuff
}
SQLReader->Close();
--
-----------------------------------
Ken Varn
Senior Software Engineer
Diebold Inc.
EmailID = varnk
Domain = Diebold.com
-----------------------------------
.
- Follow-Ups:
- Re: Possible memory leak in SQLDataReader().
- From: Ken Varn
- Re: Possible memory leak in SQLDataReader().
- References:
- Possible memory leak in SQLDataReader().
- From: Ken Varn
- Possible memory leak in SQLDataReader().
- Prev by Date: Re: Access 97 Provider for ADO.NET 2.0
- Next by Date: Re: ADO.NET 2.0 & MSDE & Win98
- Previous by thread: Possible memory leak in SQLDataReader().
- Next by thread: Re: Possible memory leak in SQLDataReader().
- Index(es):