On Thu, Jun 18, 2015 at 5:45 PM, Patrick Walton <pwal...@mozilla.com> wrote:
> It's fine to pass channels over channels as long as those channels don't
> cross process boundaries. In that case, the paint task lives in the chrome
> process (since it has access to the GPU), so you're fine. The problematic
> cases are essentially {script,layout} <-> (anything else).

There's a similar case for the layout task, in
components/script/layout_interface.rs

impl Reporter for LayoutChan {
    // Just injects an appropriate event into the layout task's queue.
    fn collect_reports(&self, reports_chan: ReportsChan) -> bool {
        let LayoutChan(ref c) = *self;
        c.send(Msg::CollectReports(reports_chan)).is_ok()
    }
}

And the script task will presumably be instrumented eventually.

If there is one memory profiler per process then it might require some
arrangement, but it'll probably work out ok.

Nick
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to