Size: a a a

2020 November 23

АГ

Алексей Герасимов... in Rust Async
diabolo
так, это пример не чистого актора, а актора из actix-web!
короче, сделать сможешь на хабе или лабе чего хочешь с описанием?
я тебе или нарисую как, или, заведешь ишью и будем делать, по ходу назрело
Это чистый actix, нарисую пример
источник

d

diabolo in Rust Async
Алексей Герасимов
Это чистый actix, нарисую пример
пасиб, это реально важно и я не здебусь
источник

ph

pl 🦑 hk in Rust Async
источник

d

diabolo in Rust Async
он не о том
источник

d

diabolo in Rust Async
и тем более не той версии 🤣🤣🤣
источник

AZ

Alexander Zaitsev in Rust Async
так, я здесь. кто тут что про акторы у меня спрашивал?
источник

AZ

Alexander Zaitsev in Rust Async
diabolo
никто не мешает, вообще как акторы работают знаешь?
что значит как работают? что конкретно я должен ответить?
источник

AZ

Alexander Zaitsev in Rust Async
но вообще вопрос выше точно совпадает с моим - как внутри хэндлера актора awaitнуть функцию?
источник

d

diabolo in Rust Async
Alexander Zaitsev
но вообще вопрос выше точно совпадает с моим - как внутри хэндлера актора awaitнуть функцию?
почти совпадает.
но с ним мы хоть договорились, он нарисует репо с претензиями что хочет и из этого уже можно будет (появится, возможно) смысл править rt
источник

AZ

Alexander Zaitsev in Rust Async
не-не, я пока не говорю про то, что там надо править rt или что-то в этом духе. мой вопрос проще - как awaitнуть функцию внутри хэндлера актора?
источник

d

diabolo in Rust Async
Alexander Zaitsev
не-не, я пока не говорю про то, что там надо править rt или что-то в этом духе. мой вопрос проще - как awaitнуть функцию внутри хэндлера актора?
вот и ты свою задачу оформи в виде репо и описания
чем вас больше, тем лучше
источник

AZ

Alexander Zaitsev in Rust Async
diabolo
вот и ты свою задачу оформи в виде репо и описания
чем вас больше, тем лучше
я не понял, а как это влияет на возможность сделать это или нет?
источник

AZ

Alexander Zaitsev in Rust Async
правильно я понимаю, что сейчас так сделать нельзя?
источник

d

diabolo in Rust Async
Alexander Zaitsev
правильно я понимаю, что сейчас так сделать нельзя?
не знаю, я твоего кода не видел. бубеныть.
источник

AZ

Alexander Zaitsev in Rust Async
это какой-то рофл, наверное
источник

d

diabolo in Rust Async
ты видел о чем я его попросил? сделай тоже самое
источник

AZ

Alexander Zaitsev in Rust Async
diabolo
ты видел о чем я его попросил? сделай тоже самое
зачем??????
источник

d

diabolo in Rust Async
Alexander Zaitsev
это какой-то рофл, наверное
таааак, кончай Стесняться кода, даже если в твоём понимании он и говно — это ещё не факт
источник

d

diabolo in Rust Async
Alexander Zaitsev
зачем??????
это повод для меня переписать rt
источник

AZ

Alexander Zaitsev in Rust Async
use actix::prelude::*;

/// Define message
#[derive(Message)]
#[rtype(result = "Result<bool, std::io::Error>")]
struct Ping;

// Define actor
struct MyActor;

// Provide Actor implementation for our actor
impl Actor for MyActor {
   type Context = Context<Self>;

   fn started(&mut self, ctx: &mut Context<Self>) {
      println!("Actor is alive");
   }

   fn stopped(&mut self, ctx: &mut Context<Self>) {
      println!("Actor is stopped");
   }
}

/// Define handler for `Ping` message
impl Handler<Ping> for MyActor {
   type Result = Result<bool, std::io::Error>;

   fn handle(&mut self, msg: Ping, ctx: &mut Context<Self>) -> Self::Result {
       println!("Ping received");
       nats::asynk::connect("url").await;
       Ok(true)
   }
}

#[actix_rt::main]
async fn main() {
   // Start MyActor in current thread
   let addr = MyActor.start();

   // Send Ping message.
   // send() message returns Future object, that resolves to message result
   let result = addr.send(Ping).await;

   match result {
       Ok(res) => println!("Got result: {}", res.unwrap()),
       Err(err) => println!("Got error: {}", err),
   }
}
источник