Muchas gracias por tu respuesta Carlos, voy a probar creando un STBOutFiler y STBValidatingInFiler para cada envío y recepción de mensaje. Hasta Luego
El jueves, 5 de noviembre de 2020 a la(s) 09:16:56 UTC-3, Carlos Ferro escribió: > ¿Por qué mantener vivas las mismas instancias de STBFiler todo el tiempo? > Esos objetos no son costosos de crear, es más fácil crear uno para cada > objeto transmitido. Cuando terminas de leer o escribir, ese filer muere y > la siguiente vez, creas otro. > > Si no, lo que deberías hacer es "resetear" los maps cuando tengas un idle > time (cuando no estés leyendo o escribiendo objetos). > > Sin mirar más el código, es lo que se me ocurre, a alto nivel. > Suerte > > On 5/11/2020 00:19, Pablo Javier Mur wrote: > > Hola, > > tengo 2 aplicaciones escritas en Dolphin SmallTalk 7.1.14 que se comunican > por socket. Para enviar datos utilizo el siguiente objeto: > > > (STBOutFiler on: socket writeStream) que se mantiene vivo durante toda la > comunicación. > > > Para recibir datos utilizo el siguiente objeto: > > > ((STBValidatingInFiler on: socket readStream) > > validationBlock: [:className | true]; > > yourself) el cual también se mantiene vivo durante toda la conexión. > > > El problema es que las aplicaciones pueden estar conectadas durante horas > y se envían objetos todo el tiempo. Los objetos STBFiler tienen atributos > writeMap y readMap respectivamente los cuales va registrando todos los > objetos que se reciben o envían lo cual hace que acumulen miles de > instancias que no se usan pero no se eliminan porque están referenciadas > por esos atributos. Eventualmente, en algún momento las aplicaciones caen. > ¿Estoy haciendo algo mal? Les agradecería si pueden decirme si debo cambiar > algo para no acumular objetos que deberían ser eliminados. > > Saludos y muchas gracias. > > -- > -- > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > > http://www.clubSmalltalk.org > --- > Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" > de Grupos de Google. > Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, > envía un correo electrónico a [email protected]. > Para ver esta conversación en el sitio web, visita > https://groups.google.com/d/msgid/clubsmalltalk/7b016f99-8e31-4456-8dd9-f4efb74c16f2n%40googlegroups.com > > <https://groups.google.com/d/msgid/clubsmalltalk/7b016f99-8e31-4456-8dd9-f4efb74c16f2n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- > > * carlos e. ferro *| senior developer | *caesar systems * > > [email protected] > -- -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org --- Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google. Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a [email protected]. Para ver este debate en la Web, visita https://groups.google.com/d/msgid/clubsmalltalk/1c832fc7-c31d-451e-b069-ff9eaac6b414n%40googlegroups.com.
