Hilo
Re: Leer de stdin una cadena extremadamente larga (COACH) 2017-07-20 03:22:24
Holas ! Carlos,
siempre se aprende algo nuevo, gracias por compartir tu solucion ..
saludos!
ATTE:
ISC Edmundo Cuadriello Narvaez
Software Engineer Sr.
C++, C#, JAVA programmer.
Tel: 33-33357347
Cel: 33-13555312
ecnarvaez@yahoo.com
ecnarvaez@hotmail.com
"All for Linux, and Linux for every one"
--------------------------------------------
El mar 18-jul-17, Carlos <jsbwyl8@gmail.com> escribió:
Asunto: Re: [C con Clase] Leer de stdin una cadena extremadamente larga
A: "Edmundo Cuadriello Narvaez" <ecnarvaez@yahoo.com>
Cc: "Lista de correo sobre C y C++" <cconclase@listas.conclase.net>
Fecha: martes, 18 de julio de 2017, 14:50
Hola
Edmundo,
Investigando me
tope con varias cosas interesantes tales como:
http://www.linusakesson.net/programming/tty/
y con
comandos de linux como ulimit -a , el pipe size es la
limitante para el entrada de un gran numero de caracteres,
con esta configuración no tiene mayor
problemas
time(seconds) 3
file(blocks) 102400
data(kbytes) 524288
stack(kbytes) 32768
coredump(blocks) unlimited
memory(kbytes) unlimited
locked memory(kbytes) 64
process 3
nofiles 1024
vmemory(kbytes) 524288
locks unlimited
rtprio 0
La limitante esta asociada al
sistema operativo, mas que a la forma de leer la cadena
;)
Saludos!.
El 10 de julio de 2017,
20:13, Edmundo Cuadriello Narvaez <ecnarvaez@yahoo.com>
escribió:
Holas ! Carlos,
ya te dio Daniel alguna opcion....
A mi se me ocurre que podrias, crear una interface basada en
Windows( atraves de MFC ) que supla el programa del CMD y te
permita recibir el numero de caracteres que esperas sean
pegados desde el usuario, quiza agregando un dialog y a este
dialog agregarle un TextBox o un TextArea y que puedas pegar
toda la informacion y de ahi ya la puedas tomar en bloques y
enviarla a donde requieras ...
algo similar hacen los SQLBrowsers , reciben queries muy
grandes, algunos son de 1 GB de informacion (un solo query),
y es enviado en pequenos "chunks" o bloques que
son pegados al recibirlos del otro lado (del server quiza)
...y ya ser procesado por el SQL engine ..
es algo que se me ocurre y usando C++, ahora que si lo
quieres hacer rapido, podrias usar C# para la interface y
C++ para la transferencia de los datos . jejejeje
saludos
ATTE:
ISC Edmundo Cuadriello Narvaez
Software Engineer Sr.
C++, C#, JAVA programmer.
Tel: 33-33357347
Cel: 33-13555312
ecnarvaez@yahoo.com
ecnarvaez@hotmail.com
"All for Linux, and Linux for every one"
------------------------------ --------------
El vie 30-jun-17, Daniel Pons Monforte <dponsmonforte@gmail.com>
escribió:
Asunto: Re: [C con Clase] Leer de stdin una cadena
extremadamente larga
A: cconclase@listas.conclase.net
Cc: "Carlos" <jsbwyl8@gmail.com>
Fecha: viernes, 30 de junio de 2017, 2:05
Hola Carlos,
No es un problema de que instrucción utilizar. Es
un
problema de
gestionar la información. Sabes el dicho de
divide y
vencerás?
Pues eso es lo que tienes que gestionar.
Muchos
protocolos de
comunicación envían paquetes pequeños de datos
que
luego se
acumulan en grandes cantidades. Pues tu debes
hacer lo
mismo. Un
millón de caracteres es una burrada de
información.
O haces que tu
programa lo lea por paquetes o envías la
información
por paquetes.
Así de simple.
Suerte
El 30/06/17 a
las 00:30, Carlos
escribió:
Hola a todos, me presento soy Carlos
de
Chile, y tengo
una inquietud que no he podido
resolver,
espero algún
experto en c++ me pueda orientar.
Como puedo leer una cadena de texto que
contiene
números
separados por espacios ej. "1212
123123
12312312" , el largo
total de esta cadena es de mas de
400.000
caracteres con una
media aprox de 1.000.000 de caracteres
que es
pegada en una
consola. Note que hasta 65535 caracteres
el
programa es
capaz de devolver la entrada, pero
ingresando un
largo mayor
a eso, el programa deja de responder.
Existe alguna forma de leer estas
colosales
cadenas por la
entrada estándar con c++?
Saludos!.
______________________________
_________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/
mailman/listinfo/cconclase_ listas.conclase.net
Bajas: http://listas.conclase.net/
index.php?gid=2&mnu=FAQ
______________________________ _________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/
mailman/listinfo/cconclase_ listas.conclase.net
Bajas: http://listas.conclase.net/
index.php?gid=2&mnu=FAQ
_______________________________________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ