Re: [Audacity-devel] UndoManager::ModifyState and why it does that
A free multi-track audio editor and recorder
Brought to you by:
aosiniao
From: Vaughan J. <va...@au...> - 2013-10-08 05:12:28
|
On 10/7/2013 6:45 PM, Leland wrote: > On 10/7/2013 5:51 PM, Vaughan Johnson wrote: >> Interesting, Leland. But it's not going to be in 2.0.5, nor help us get >> 2.0.5 out, so let's discuss it afterward, please. > Uhm...darnit. I thought I might squeeze 'er in there. :-) Heh, not on my watch. That's too "blood and guts" as Martyn described the other thing. Will review the below after 2.0.5. :-) - V > >> On 10/7/2013 2:16 PM, Leland wrote: >>> So, while looking into a critter report, I was tracing through the >>> ModifyState() function and I got to wondering... >>> >>> Why does it copy the entire tracklist for EVERY little state change? >>> And if I'm looking at this correctly, it is copying the exact same list >>> every time. Shouldn't that be relegated to the PushState() function >>> when the track data actually changes (like when applying an effect)? >> Seems reasonable. But it is just copying the list, not the actual >> tracks, so I'm not sure it would be a big win vs what you describe >> below. My guess is that was the reasoning when it was set up that way. > I'll hold off on more discussion, but I did want to throw this out. I > set up a counter to collect the time it took to do 1000 > "OnCursorRight()" calls using the original ModifyState and one that > doesn't copy the tracklist: > > Original took 55.522 seconds > New took 36.942 seconds > > Doesn't sound like a whole heck of a lot right. And who does 1000 right > cursors? (easier to do than you might thing). Anyway, once 2.0.6 is > out, I'll see if I can record a video of the amazing difference it makes > in cursor movement. > > BTW: This is not me just looking at something to change. It's in > relation to: > > http://bugzilla.audacityteam.org/show_bug.cgi?id=406 > > And the unreal slowness of moving through a project using the keyboard. > > Leland > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk > _______________________________________________ > audacity-devel mailing list > aud...@li... > https://lists.sourceforge.net/lists/listinfo/audacity-devel > |