Tema: librerias
Ver Mensaje Individual
  #4  
Antiguo 11-07-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Hola Josi,
Imaginate este escenario: tienes dos programas, totalmente distintos, y ambos necesitan hacer la misma operación.

Una opción sencilla es tener aquel código que comparten, en una unidad de propósito general y declararla en la uses de ambos proyectos.
¿pero que pasa?

Que el ejecutable crece, y cada uno cargará en memoria la misma unit.
He aquí, un posible uso de una biblioteca dll (o blp, propia de Delphi).

Cuando se carga una dll en memoria, varios programas pueden hacer uso de ella y compartir la memoria para cada uno. Es decir: una misma zona de memoria se destina para trabajar con los programas que hagan uso de ella. El truco está en que el SO cuando cambia de un proceso a otro (de un aplicativo a otro. Entiendase: multiprocesamiento) copia de la memoria los datos destinado para cada ejecutable en una zona determinada, y luego esté será leído en un momento posterior (para ser preciso cuando el SO destina el ciclo para atender al programa).

la dll no se borra de la memoria hasta que no exista un programa que haga uso de la misma.

¿Entiendes ahora con este ejemplo para que se puede usarla?
Sino se entiende, seria bueno que nos indicaras a que viene tu pregunta. Si nos explicaras mejor tu situación, podríamos responderte mas certeramente.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita