Perdón corrijo el código del email anterior
validationBlock: [:className |

Smalltalk at:className ifAbsent:[ ^self error:'clase  ',className, '
ausente en el image'.].
true.].



El jue., 5 de noviembre de 2020 17:05, Juan <[email protected]>
escribió:

> Hola te comento entre líneas,
>
> El jue., 5 de nov. de 2020 4:30 PM, Pablo Javier Mur <[email protected]>
> escribió:
>
>> 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];
>>>
>>>
> No conozco exactamente tu app pero e; el Stbxxx se usa [ara serializar
> pero me parece que es más eficiente otros métodos,
> El validación es para saber si ;a clase existe en la imagen destino, una
> forma de hacer esto sería
> Smalltalk at: classname ifAbsent:[ self error: 'clase ',className no
> existe en esta imagen'].
> No tengo acá la imagen [ero estoy seguro que Dp7 tiene el framework ston
> u. Otros seríalizadores.
> Saludos
> Desde el CEL
> Juan Diaz Cortez
>
>> 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 esta conversación en el sitio web, visita
>> https://groups.google.com/d/msgid/clubsmalltalk/1c832fc7-c31d-451e-b069-ff9eaac6b414n%40googlegroups.com
>> <https://groups.google.com/d/msgid/clubsmalltalk/1c832fc7-c31d-451e-b069-ff9eaac6b414n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
-- 
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/CAKizN9yDwvoJJ8-%2B%3D4cff%2BtsKBMPqWP5be8jNZ%3Da2woQAEzWag%40mail.gmail.com.

Responder a