Hi Sergey,
> In VB.net windows application I use following
> code implementing SqlBulkCopy import:
> Using connODBC As New OdbcConnection(ConnStrODBC)
> connODBC.Open()
> Dim dbcmd As New OdbcCommand(String.
> Format("select * from {0}", TableName), connODBC)
> dbcmd.CommandTimeout = SQL_TIMEOUT
> bulkcopy.WriteToServer(dbcmd.ExecuteReader())
> connODBC.Close()
> connODBC.Dispose()
> End Using
> this code leak to memory leak problems on big files. How are you measuring the memory usage and leaking? One thing that is most
probably the major factor is that you let the .NET garbage collector to
collect memory for the OdbcCommand, OdbcDataReader and the SqlBulkCopy
instances.
All these implement the IDisposable interface, so you should call their
Dispose methods if you want to make sure the memory is freed as soon as
possible. If you don't this, you might observe the said leak.
--
Regards,
Mr. Jani Järvinen
C# MVP
Vantaa, Finland
janij@xxxxxx
http://www.saunalahti.fi/janij/