none
objeto connection consume mucha memoria RRS feed

  • Debate general

  • Hola expertos

    Tengo una duda, es sobre mi conexion con ado a una base acces 2010, tengo un sistema que al momento de ingresar crea el objeto connection y este se usa para todos los formularios del sistema y se destruye al salir del sistema.

    Mi duda es, si el sistema lo usan todo el dia sin cerrarlo, este objeto connection hace que el sistema se ponga lento?

    Saludos y gracias por su repuesta a esta consulta

    Fernando

    miércoles, 2 de octubre de 2013 4:49

Todas las respuestas

  • Hola, Realmente no lo creo, pues solo es un objeto, yo me preocuparia por que no se destruya.
    miércoles, 2 de octubre de 2013 5:02
  •  public static DataTable GetActiveCalls()
        {
            string select = "SELECT call_id, call_time, msisdn, status FROM call WHERE status = 0 OR status = 1 ORDER by call_id ASC";
           using(OleDbConnection conn=new OleDbConnection(cadenaConexion)
           {
               OleDbCommand cmd = new OleDbCommand(select, conn); 
               DataTable dt = new DataTable("Active Calls");
               OleDbDataAdapter DA = new OleDbDataAdapter(cmd);
               try
               {
                   conn.Open();
                   DA.Fill(dt);
               }
               catch (Exception ex)
               {
                   string sDummy = ex.ToString();
               }
               finally
               {
                   conn.Close();
               }
            }
            return dt;
        }

    como ves creas una conexion en el momento de utilizarla y al crearla en un bloque using, esta se garantiza que se cierra y se haga un dispose() para liberar recursos.

    Tengo que decirte que estoy totalmente en desacuerdo de tu forma de implementar. Las buenas practicas de programación establecen que se debe crear un objeto conexión en el momento de acceder a los datos. Un ejemplo que te pongo, en c# ya que no especificas en que lenguaje programas,


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    miércoles, 2 de octubre de 2013 5:58
  • Esta es una pregunta, no un debate, puedes cambiar el tipo por favor..

    Y estoy en total acuerdo con Sergio, usar la clausula USING te ayudará mucho a optimizar recursos.

    miércoles, 2 de octubre de 2013 15:47