octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Separation into dock widgets


From: John Swensen
Subject: Re: Separation into dock widgets
Date: Sat, 30 Apr 2011 07:34:30 -0400

On Apr 30, 2011, at 4:44 AM, Jacob Dawid wrote:

> I went ahead and did rand(10000, 10000) and it works flawlessly. There is no 
> need to optimize unless there is a problem that requires it.

Jacob,
I just went and looked at the code for the symbol_record class and it looks 
like the copy constructor only increased a reference counter.  It actually 
doesn't do a deep copy as you expected.  I noticed this because I went back to 
check why rand(10000,10000) in Quint wasn't using 2 times as much memory as the 
same command in just Octave.  I think this implies that despite the best 
intentions of OctaveLink, carrying around a reference to variables still being 
manipulated by the Octave internals destroy and thread-safetiness that 
OctaveLink is intended to provide, as you could access these references outside 
the Readline idle event loop.

I don't know if it is a related problem (I expect it is), but if you try to 
clear the large random matrix, Quint crashes.
Try:
zz = rand(10000,10000);
clear zz
This crashes every time on both Ubuntu and OSX when updating the 
VariablesDockWidget. It doesn't happen for certain smaller variables, but I'm 
not sure why.

John Swensen

reply via email to

[Prev in Thread] Current Thread [Next in Thread]