将相同的消息发送给其他参与者,而不在Actix / Rust中进行克隆

时间:2020-08-12 22:14:02

标签: rust rust-actix actix-web

我需要将相同的消息对象发送给其他参与者。每次克隆它都会非常昂贵。而且实际上没有必要。而且我得到了预期的错误。 “ 值在先前的循环迭代中移到了这里”。

用&传递参数不起作用。我无法使用Weak / Arc参考。 Actix似乎不支持它(弱/弧消息)。

如何才能成为这种情况的最佳解决方案?

let myMessageObject: MyMessageType = MyMessageType {};
for user in self.users.iter() {
    user.Addr.do_send(myMessageObject);
}

impl Handler<MyMessageType> for User {
    type Result = ();
    fn handle(&mut self, setStartMessage: MyMessageType, ctx: &mut ws::WebsocketContext<Self>) {
    }
}

0 个答案:

没有答案