Antes que nada gracias por su tiempo.
Estoy desarrollando una aplicacion en VC++, en realidad en MFC.
Esta aplicacion tiene un spool de trabajo en el que corren una cantidad de trabajos(threads), en paralelo, y otros esperan por un lugar.
En general en cada trabajo realizo operaciones sobre una Base de Datos, para lo cual , al instanciar el trabajo le paso como parametro un puntero a la conexión.
Luego en el metodo que se ejecuta en el Trabajo, creo un comando y un recorset con:
Código:
Al terminar el Trabajo, hago un recorset.Close() y luego destruyo el hilo._CommandPtr pCmd_SP; pCmd_SP.CreateInstance(__uuidof(Command)); //establezco conex con comando pCmd_SP->ActiveConnection = pConn; // seteo sql CString instruccion = "execute dbo.sp_llamadas_actuales_uno @id_empleado="; instruccion = instruccion + id_empleado ; pCmd_SP->CommandText = (_bstr_t) instruccion ; // Create the variant NULL _variant_t vNull; vNull.vt = VT_ERROR; vNull.scode = DISP_E_PARAMNOTFOUND; // creo el Rs _RecordsetPtr pRs_SP; pRs_SP.CreateInstance(__uuidof(Recordset)); pRs_SP->CursorLocation = adUseClient; pRs_SP->PutRefSource(pCmd_SP);
Problema
Mi problema es que la aplicacion va incrementando la memoria en forma proporcional al trabajo realizado, e intuyo que es por no liberar algun objeto. Puede ser asi ????
PD: no agregue el cod de la creacion y eliminación del hilo por la complejidad del mismo.
Ojala se entienda el problema.
![triste](http://static.forosdelweb.com/fdwtheme/images/smilies/frown.png)
Saludos