[Laszlo-dev] For Review: Change change.qauDneSy9.txt Summary: Make Profiler work in DHTML
John Sundman
jsundman at laszlosystems.com
Tue Jun 27 16:56:27 EDT 2006
So do I correctly understand that the profiler is moving from
provisional/incubator status to full-fledged particpation as part of
the platform?
In either case, approved by me.
jrs
On Jun 27, 2006, at 4:50 PM, P T Withington wrote:
> [Henry, I don't think this breaks anything, so if you would like me to
> check it in for you to play with, let me know.]
>
> Change change.qauDneSy9.txt by ptw at tin-woodsman.local
> /Users/ptw/pending-changes/ on 2006-06-27 16:10:16 EDT
>
> Summary: Make Profiler work in DHTML
>
> New Features: Profiler
>
> Bugs Fixed:
> LPP-2075 Make DHTML compiler work for profile and backtrace
> LPP-903 server should dump profile data without requiring external
> listener on port 4444 (partial)
> LPP-2258 Profiler does not work with lo-res clocks (e.g., SWF on
> Windows)
>
> Technical Reviewer: hminsky (pending)
> QA Reviewer: max (pending)
> Doc Reviewer: jsundman (pending)
>
> Documentation:
>
> The profiler is now named `Profiler` (rather than LzProfiler, since it
> exports some generally useful methods now).
>
> By default, compiling with ?profile=true will create the Profiler,
> will execute Profiler.start() immediately, and Profiler.stop() after
> the canvas is inited, thus creating a profile of the startup process.
>
> The profiler sends its output to a file with the same name as your app
> but the extension .lzx changed to .profiler. Use
> tools/profiler/profile.pl to process that file to a gprof-compatible
> output.
>
> Public profiler methods:
>
> Profiler.start(): starts the profiler, clearing any previous profiler
> run and overwiting any existing .profiler file.
>
> Profiler.stop(): stops the profiler, ensuring profiler output is
> logged and closing the .profiler file.
>
> Profiler.pause(): temporarily suspends profiling.
>
> Profiler.resume(): resumes profiling.
>
> Details:
> LzProfile.as -> .lzs: Rewritten as a singleton, adding new manual
> interface, XMLHttpRequest back-end.
>
> LzInstantiator, LzNode, LaszloEvents: $lzprofiler -> Profiler
>
> LzIdle: Don't profile LzIdle.update. Optimize to only send onidle
> if clients.
>
> LaszloCanvas.*: Profiler.stop() when you are done.
>
> LaszloLibrary: Profiler.start() ASAP
>
> buildlfcprofiledebug: New, for debugging profiler
>
> lzsc, Compiler: Set $as2 for swf9 (since it is $as2 compatible)
>
> JavascriptGenerator, CodeGenerator: Fix longstanding bug in logic
> for lo-res clocks to actually work.
>
> ResponderPROFILE: New. Allows the LFC profiler to record
> profiler data into a file on the server
>
> ResponderLFC: Learn how to deliver the profile or profile-debug
> versions.
>
> Tests:
>
> IWFM in DHTML. N.B., The swf profiler still talks to a dedicated
> listener on port 4444, not to the PROFILE responder -- I'll fix
> that when I figure out how to do the equivalent of an
> XMLHttpRequest in SWF.
>
> Files:
> D WEB-INF/lps/lfc/profiler/LzProfile.as
> A + WEB-INF/lps/lfc/profiler/LzProfile.lzs
> M WEB-INF/lps/lfc/services/LzInstantiator.as
> M WEB-INF/lps/lfc/services/LzIdle.js
> M WEB-INF/lps/lfc/core/LzNode.lzs
> M WEB-INF/lps/lfc/views/LaszloCanvas.as
> M WEB-INF/lps/lfc/views/LaszloCanvas.js
> M WEB-INF/lps/lfc/LaszloLibrary.lzs
> M WEB-INF/lps/lfc/events/LaszloEvents.lzs
> A WEB-INF/lps/lfc/buildlfcprofiledebug
> M WEB-INF/lps/server/sc/lzsc.py
> M
> WEB-INF/lps/server/src/org/openlaszlo/sc/JavascriptGenerator.java
> M WEB-INF/lps/server/src/org/openlaszlo/sc/CodeGenerator.java
> A
> WEB-INF/lps/server/src/org/openlaszlo/servlets/responders/
> ResponderPROFILE.java
> M
> WEB-INF/lps/server/src/org/openlaszlo/servlets/responders/
> ResponderLFC.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/Compiler.java
>
>
> <patch.ptw.45oW.tgz>
>
More information about the Laszlo-dev
mailing list