FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Así es , tengo entendido que Lazarus también tiene TParallel pero recibe es un puntero a un procedimiento... aunque no lo he probado.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
#2
|
||||
|
||||
El código puede escribirse de muchas formas pero lo que lo retrasa el la línea Memo1.Lines.Add(
Si hacemos que el memo se escriba por mensajes, cualquiera de las formas se ejecuta en menos de 10 milisegundos:
Los bucles terminarán en escasos milisegundos aunque el Memo tardará en llenarse de forma ordenada lo que tarde Windows en tramitar la cola de mensajes. Saludos. |
#3
|
||||
|
||||
Se puede almacenar en memoria y luego, al terminar, asignarlo al memo. Así será incluso más rápido.
|
#4
|
||||
|
||||
Hola.
Si, el método Add es muy lento; yo he obtenido buenos resultados operando sobre una variable de tipo string y asignándola luego a la propiedad Text. Resultados para 1000 números usando la propuesta de roman en todos los casos: Código:
Concatenando : 203 µs. Mensaje : 261 µs. Método Add : 3320579 µs. Saludos Edito: Mas o menos como lo que dijo Casimiro mientras componía este
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 23-04-2017 a las 22:32:48. |
#5
|
||||
|
||||
Cierto, el manejo de cadenas de texto suele ser siempre lo más lento de todo.
|
#6
|
||||
|
||||
Bueno, pero antes de agregar líneas por PostMessage o concatenar y pegar, ¿han intentado un BeginUpdate - EndUpdate?
LineComment Saludos |
#7
|
||||
|
||||
Ahhh caramba, ¿VCL también tiene estos métodos?... porque los he usado es en FMX.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
#8
|
||||
|
||||
Sí, claro. Ahí han estado por siempre
LineComment Saludos |
#9
|
||||
|
||||
Hola roman.
Cita:
Código:
Concatenando : 203 µs. Mensaje : 261 µs. Begin/Update : 858024 µs. Método Add : 3320579 µs.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#10
|
||||
|
||||
Bueno, a mí el BeginUpdate/EndUpdate me ha arrojado los mismo números que me arroja el uso de TParallel. Que curioso todo.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Copiar números impares de un listbox a otro | ale4132 | Varios | 5 | 17-12-2012 19:33:10 |
Consulta Desde->Hasta | Luis M. | Firebird e Interbase | 6 | 30-07-2008 19:40:34 |
1000 Mil M 0011 1110 1000 3e8 | sakuragi | La Taberna | 29 | 05-03-2008 18:28:56 |
Poner puntos a los números mayores de 999 y hasta 1M | Pedro-Juan | Trucos | 2 | 26-12-2007 19:13:08 |
Factorial hasta 1000 | Cheswar | Varios | 29 | 21-09-2007 20:43:27 |
|