mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Issue 4497: Converts WorkerPostMessage into a Runnable.
Implements WorkerMessage handler implementing Runnable trait.
This commit is contained in:
parent
dd84ae6bfb
commit
50d53c9fa3
3 changed files with 24 additions and 11 deletions
|
@ -16,7 +16,7 @@ use dom::bindings::utils::{Reflectable, reflect_dom_object};
|
|||
use dom::dedicatedworkerglobalscope::DedicatedWorkerGlobalScope;
|
||||
use dom::eventtarget::{EventTarget, EventTargetHelpers, EventTargetTypeId};
|
||||
use dom::messageevent::MessageEvent;
|
||||
use script_task::{ScriptChan, ScriptMsg};
|
||||
use script_task::{ScriptChan, ScriptMsg, Runnable};
|
||||
|
||||
use servo_util::str::DOMString;
|
||||
|
||||
|
@ -120,3 +120,24 @@ impl<'a> WorkerMethods for JSRef<'a, Worker> {
|
|||
event_handler!(message, GetOnmessage, SetOnmessage)
|
||||
}
|
||||
|
||||
pub struct WorkerMessageHandler {
|
||||
addr: TrustedWorkerAddress,
|
||||
data: *mut u64,
|
||||
nbytes: size_t
|
||||
}
|
||||
|
||||
impl WorkerMessageHandler {
|
||||
pub fn new(addr: TrustedWorkerAddress, data: *mut u64, nbytes: size_t) -> WorkerMessageHandler {
|
||||
WorkerMessageHandler {
|
||||
addr: addr,
|
||||
data: data,
|
||||
nbytes: nbytes,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Runnable for WorkerMessageHandler {
|
||||
fn handler(&self){
|
||||
Worker::handle_message(self.addr.clone(), self.data, self.nbytes);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue