Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Memory leak with disconnected recordsets.
Message
De
31/05/2001 05:35:03
Cetin Basoz
Engineerica Inc.
Izmir, Turquie
 
 
À
30/05/2001 12:23:20
David Bennett
AdvoCare International LLC
Carrollton, Texas, États-Unis
Information générale
Forum:
Visual FoxPro
Catégorie:
COM/DCOM et OLE Automation
Divers
Thread ID:
00512735
Message ID:
00513045
Vues:
17
>Hey guys, I've already posted this to microsoft.public.fox.programmer.exchange. I hope you don't mind...
>
>Anyway, I'd been having a memory leak problem and finally narrowed it down to the following code snippet:
>
>
>LOCAL oc, rs, i
>oc = CREATEOBJECT("ADODB.CONNECTION")
>oc.CursorLocation = 3 && ADUSECLIENT
>oc.Open("Provider=SQLOLEDB;Data Source=SQLSERVER;" + ;
>        "Database=pubs;User ID=sa;Password=;")
>rs = CREATEOBJECT("ADODB.RECORDSET")
>FOR i = 1 TO 10000
>    WAIT WINDOW LTRIM(STR(i)) NOWAIT
>    rs.ActiveConnection = oc
>    rs.Open("SELECT getdate()")
>    rs.ActiveConnection = .NULL. && Comment to plug the leak.
>    rs.Close()
>ENDFOR
>oc.Close()
>
>
>If you load up Performance Monitor and watch the Private Bytes of the VFP6 process, you'll see the memory usage skyrocket and never go back down. If you then comment out the line that disconnects the recordset (rs.ActiveConnection = .NULL.), the leak stops. Now, the exact same code in VB doesn't leak memory. So I'm pretty sure it's a VFP only thing. I've tested on VFP SP3/SP4/SP5, MDAC 2.5/2.6 running on both WIN2K SP2 and WINNT SP6. It appears to have been around for a long time. Has anyone else encountered this?
>
>- david

Also this might help.
PRB: ADO Disconnected Recordset Appears to Leak Memory when Editing in Place

Q269842

Cetin
Çetin Basöz

The way to Go
Flutter - For mobile, web and desktop.
World's most advanced open source relational database.
.Net for foxheads - Blog (main)
FoxSharp - Blog (mirror)
Welcome to FoxyClasses

LinqPad - C#,VB,F#,SQL,eSQL ... scratchpad
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform