FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Que yo sepa ARC —Automatic Reference Counting— es y seguirá siendo sólo para dispositivos móviles. Aunque resulta tentador que lo fuera ya para todas las plataformas.
Casimiro: ¿Cómo es Lazarus en ese aspecto? ¿Los objetos usan contadores de referencias automáticos como lo hacen los valores String? ¿En qué plataformas? ¿Sólo en dispositivos móviles, igual que Delphi? Creo que sería interesante conocerlo. Saludos. |
#2
|
||||
|
||||
Cita:
La unica razon por la cual el resto de los compiladores son ARC es porque los compraron asi Yo tambien creo que lo mejor es que todos sigan el mismo esquema de memoria. Para el programador casual es inadvertido. Pero para los bibliotecarios es un problema. Basta con hurgar un poco en el propio codigo de la RTL, se ven bastantes condicionales {$IFDEF} ARC. Y es que si bien es bastante transparente, a veces el modelo de memoria subyacente puede condicionar el codigo |
#3
|
||||
|
||||
Cita:
Un recolector de basura es más eficiente para servidores que el reference counting o el manejo manual. El problema de los GC es que (tal vez, depende del tipo que se use) introducen pausas y que consumen más memoria. Por eso, el modelo de ARC es ideal para móviles: No introduce pausas (que sería más notable en un equipo que casi en su totalidad funciona como interface de usuario) y consume menos memoria (que se traduce en mayor longevidad en la batería y economía de recursos). Pero los GC son más eficientes en un entorno de servidor porque pueden operar en "batch" sobre un mayor rango de memoria (por ejemplo, sobre .NET), e incluso puede delegarse a un hilo aparte. Esto conduce a la idea contra-intuitiva que Java arrasa en desempeño a otros entornos (osea, en workloads de servidor), porque tiene uno de los VM/GC mejor tuneados de la industria. Esto es GC 101: http://www.iecc.com/gclist/GC-faq.ht...on%20questions http://www.memorymanagement.org/ ---- Tengan en cuenta que un VM/GC vs manual es similar a un lenguaje alto nivel vs. assembler: Asi como es posible que un humano escriba el mejor assembler posible, pero esto seria un humano MUY ESCASO y que en la realidad la *mayoria* seran derrotados por el assembler de un compilador decente <- porque este compilador decente a sido escrito por *ese tipo de humanos escasos*. Entonces, un GC/VM derrota al promedio de los humanos a la hora de manejar la memoria. Mientras es posible escribir un código superior, hacerlo todo el tiempo correctamente es MUY dificil y escaso. Ademas, aunque Delphi es mas de alto nivel que C/C++ sin perder su capacidad de ser eficiente tiene el problema de que carece de un protocolo/idioma universal como el RIIA, dejando en manos del programador promedio todo el proceso.
__________________
El malabarista. |
#4
|
|||
|
|||
Cita:
Cita:
|
#5
|
||||
|
||||
Cita:
.NET Core no pinta nada aqui, entre otras cosas porque asume un GC. Ademas ya estan usando LLVM, que es una mejor opcion para el tipo de lenguaje que es Delphi
__________________
El malabarista. |
#6
|
|||
|
|||
Cita:
|
#7
|
|||
|
|||
LLVM tiene sus ventajas, pero podrá ser sostenible con los tantos cambios que van surgiendo en este sector?.
|
#8
|
||||
|
||||
Cita:
Cita:
|
#9
|
|||
|
|||
Gracias por la corrección Al González
|
#10
|
||||
|
||||
De nada. Todo sea para que estos foros no se degraden como sucedió con Facebook.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
UNIGUI--Excelente Alternativa aplicaciones WEB | ASAPLTDA | Delphi para la web | 31 | 19-05-2023 04:45:02 |
Excelente frontend para MySQL | AzidRain | MySQL | 1 | 18-04-2010 19:28:25 |
Excelente manual de c/c++ para los que se inician | chico_bds | C++ Builder | 0 | 02-04-2007 01:40:39 |
Excelente noticia para los borrachines en sus salidas nocturnas | Zeta | La Taberna | 1 | 23-11-2006 05:58:31 |
Aplicaciones para Linux con Delphi | fidel | Linux | 9 | 05-05-2005 00:04:59 |
|