[英]How can I make two functions in Rust run upon spawning a thread?
在生成 Librarian 线程时,我想调用以下两个函数,但只调用了第一个 function。 有没有办法让两个函数都调用?
let Librarian = thread::spawn(move || {
libReceiveOrder();
libReceiveBooks();
});
据我了解,您想同时运行两个函数libReceiveOrders
和libReceiveBooks
。 我可以向您推荐两种方法来完成这项工作。
这很简单。 只需再创建两个线程,一个用于libReceiveOrders
,另一个用于libReceiveBooks
。 这将使它们运行并使用队列。
这对两个函数都使用了一个线程tokio::select! 宏。 这简化了它们之间的同步,因为它们可以在没有Mutex的情况下轻松共享一些 state 。 但这也使您的代码更难扩展,因为这两项工作仅使用一个线程。 取决于你的目标,这里有什么更好的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.