Transcript class allInstances does not list all instances
In the latest Pharo 3 for Mac: Transcript open. Transcript open. Transcript class allInstances inspect only shows one instance, not two. Why? Oscar
Hi Oscar, It's because Transcript is only one instance of ThreadSafeTranscript. 'Transcript open' doesn't create a new instance but opens a new window on that instance. Camille On 20 août 2014, at 17:30, Oscar Nierstrasz (gmail) <oscar.nierstrasz@gmail.com> wrote:
In the latest Pharo 3 for Mac:
Transcript open. Transcript open. Transcript class allInstances inspect
only shows one instance, not two.
Why?
Oscar
Right. I should have realized that. I was looking for a replacement for: Transcript closeAllViews which has disappeared in Pharo 3.0. So this seems to work: (Transcript dependents select: #isSystemWindow) do: #close Thanks, Oscar On 20 Aug 2014, at 17:59 , Camille Teruel <camille.teruel@gmail.com> wrote:
Hi Oscar,
It's because Transcript is only one instance of ThreadSafeTranscript. 'Transcript open' doesn't create a new instance but opens a new window on that instance.
Camille
On 20 août 2014, at 17:30, Oscar Nierstrasz (gmail) <oscar.nierstrasz@gmail.com> wrote:
In the latest Pharo 3 for Mac:
Transcript open. Transcript open. Transcript class allInstances inspect
only shows one instance, not two.
Why?
Oscar
I had a look at dependents. I see code in Object and Model which looks like quite close. And also the comment in Model says: Provides a superclass for classes that function as models. The only behavior provided is fast dependents maintenance, which bypasses the generic DependentsFields mechanism. 1/23/96 sw Is there a place where I can read more about that and/or can someone provide a quick explanation? TIA Phil On Thu, Aug 21, 2014 at 9:22 AM, Oscar Nierstrasz < oscar.nierstrasz@gmail.com> wrote:
Right. I should have realized that.
I was looking for a replacement for:
Transcript closeAllViews
which has disappeared in Pharo 3.0. So this seems to work:
(Transcript dependents select: #isSystemWindow) do: #close
Thanks, Oscar
On 20 Aug 2014, at 17:59 , Camille Teruel <camille.teruel@gmail.com> wrote:
Hi Oscar,
It's because Transcript is only one instance of ThreadSafeTranscript. 'Transcript open' doesn't create a new instance but opens a new window on that instance.
Camille
On 20 août 2014, at 17:30, Oscar Nierstrasz (gmail) < oscar.nierstrasz@gmail.com> wrote:
In the latest Pharo 3 for Mac:
Transcript open. Transcript open. Transcript class allInstances inspect
only shows one instance, not two.
Why?
Oscar
2014-08-21 9:44 GMT+02:00 phil@highoctane.be <phil@highoctane.be>:
I had a look at dependents.
I see code in Object and Model which looks like quite close.
And also the comment in Model says: Provides a superclass for classes that function as models. The only behavior provided is fast dependents maintenance, which bypasses the generic DependentsFields mechanism. 1/23/96 sw
Is there a place where I can read more about that and/or can someone provide a quick explanation?
From memory and use of other smalltalks (VisualWorks): Model provides an instance variable for storing dependents (which are then non-weak), Object instances use a global, weak array.
At least, this is how I use them. I allways have worries about discarding objects with dependencies (Morphs, models) and creating memory leaks that way. Thierry
TIA Phil
On Thu, Aug 21, 2014 at 9:22 AM, Oscar Nierstrasz < oscar.nierstrasz@gmail.com> wrote:
Right. I should have realized that.
I was looking for a replacement for:
Transcript closeAllViews
which has disappeared in Pharo 3.0. So this seems to work:
(Transcript dependents select: #isSystemWindow) do: #close
Thanks, Oscar
On 20 Aug 2014, at 17:59 , Camille Teruel <camille.teruel@gmail.com> wrote:
Hi Oscar,
It's because Transcript is only one instance of ThreadSafeTranscript. 'Transcript open' doesn't create a new instance but opens a new window on that instance.
Camille
On 20 août 2014, at 17:30, Oscar Nierstrasz (gmail) < oscar.nierstrasz@gmail.com> wrote:
In the latest Pharo 3 for Mac:
Transcript open. Transcript open. Transcript class allInstances inspect
only shows one instance, not two.
Why?
Oscar
When we use an object and not a model the dependents are stored in a global dictionary or structure and our goal is to remove it :) Stef On 21/8/14 09:57, Thierry Goubier wrote:
2014-08-21 9:44 GMT+02:00 phil@highoctane.be <mailto:phil@highoctane.be> <phil@highoctane.be <mailto:phil@highoctane.be>>:
I had a look at dependents.
I see code in Object and Model which looks like quite close.
And also the comment in Model says: Provides a superclass for classes that function as models. The only behavior provided is fast dependents maintenance, which bypasses the generic DependentsFields mechanism. 1/23/96 sw
Is there a place where I can read more about that and/or can someone provide a quick explanation?
From memory and use of other smalltalks (VisualWorks): Model provides an instance variable for storing dependents (which are then non-weak), Object instances use a global, weak array.
At least, this is how I use them.
I allways have worries about discarding objects with dependencies (Morphs, models) and creating memory leaks that way.
Thierry
TIA Phil
On Thu, Aug 21, 2014 at 9:22 AM, Oscar Nierstrasz <oscar.nierstrasz@gmail.com <mailto:oscar.nierstrasz@gmail.com>> wrote:
Right. I should have realized that.
I was looking for a replacement for:
Transcript closeAllViews
which has disappeared in Pharo 3.0. So this seems to work:
(Transcript dependents select: #isSystemWindow) do: #close
Thanks, Oscar
On 20 Aug 2014, at 17:59 , Camille Teruel <camille.teruel@gmail.com <mailto:camille.teruel@gmail.com>> wrote:
> Hi Oscar, > > It's because Transcript is only one instance of ThreadSafeTranscript. > 'Transcript open' doesn't create a new instance but opens a new window on that instance. > > Camille > > On 20 août 2014, at 17:30, Oscar Nierstrasz (gmail) <oscar.nierstrasz@gmail.com <mailto:oscar.nierstrasz@gmail.com>> wrote: > >> >> In the latest Pharo 3 for Mac: >> >> Transcript open. >> Transcript open. >> Transcript class allInstances inspect >> >> only shows one instance, not two. >> >> Why? >> >> Oscar >> > >
participants (6)
-
Camille Teruel -
Oscar Nierstrasz -
Oscar Nierstrasz (gmail) -
phil@highoctane.be -
stepharo -
Thierry Goubier