diff options
Diffstat (limited to 'src/components/main/util/task.rs')
-rw-r--r-- | src/components/main/util/task.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/components/main/util/task.rs b/src/components/main/util/task.rs index f85688f7d2f..c198e5ca49b 100644 --- a/src/components/main/util/task.rs +++ b/src/components/main/util/task.rs @@ -2,9 +2,11 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -pub fn spawn_listener<A: Send>(f: proc(Port<A>)) -> Chan<A> { +use servo_util::task::spawn_named; + +pub fn spawn_listener<A: Send, S: IntoSendStr>(name: S, f: proc(Port<A>)) -> Chan<A> { let (setup_po, setup_ch) = Chan::new(); - spawn(proc() { + spawn_named(name, proc() { let (po, ch) = Chan::new(); setup_ch.send(ch); f(po); @@ -12,9 +14,9 @@ pub fn spawn_listener<A: Send>(f: proc(Port<A>)) -> Chan<A> { setup_po.recv() } -pub fn spawn_conversation<A: Send, B: Send>(f: proc(Port<A>, Chan<B>)) -> (Port<B>, Chan<A>) { +pub fn spawn_conversation<A: Send, B: Send, S: IntoSendStr>(name: S, f: proc(Port<A>, Chan<B>)) -> (Port<B>, Chan<A>) { let (from_child, to_parent) = Chan::new(); - let to_child = do spawn_listener |from_parent| { + let to_child = do spawn_listener(name) |from_parent| { f(from_parent, to_parent) }; (from_child, to_child) |