当前位置:首页 > 每日看点 > 正文内容

Rust 语言未来会怎么样?

卡卷网7个月前 (01-17)每日看点133

今天试了试tokio和thread,对rust彻底失望了

rust无法优雅地实现一个MOBA游戏服务端

rust可以做web,但是做tcp和websocket的时候,无法优雅地“服务端主动向客户端发送消息”


其他语言都行,唯有rust语言实现不了的伪代码:

void Begin() { Socket socket = new Socket(ProtocolType.Tcp,ip, port); socket.Connect(); new Thread(() => { while (true) { byte[] bytes = new byte[1024]; int len = socket.Receive(bytes); } }).Start(); new Thread(() => { while (true) { Thread.Sleep(2000); socket.Send("Hello"); } }).Start(); }

以上为原回答

跑了评论区大佬的代码,没问题,确实实现了伪代码。我决定要学rust了。但我在读循环里加了个写,编译错误。确认了rust是个大坑。果断弃坑。

大佬代码:

use std::time::Duration; use tokio::io; use tokio::io::{AsyncReadExt, AsyncWriteExt}; use tokio::net::TcpStream; #[tokio::main] async fn main() { // 省略了所有错误处理 _ = begin().await; } async fn begin() -> io::Result<()> { let tcp_stream = TcpStream::connect("127.0.0.1:9999").await?; let (mut reader, mut writer) = tcp_stream.into_split(); let rt = tokio::spawn(async move { loop { let mut bs = [0u8; 1024]; _ = reader.read(&mut bs).await.unwrap(); // 省略读取后使用 } }); let st = tokio::spawn(async move { loop { tokio::time::sleep(Duration::from_secs(2)).await; writer.write_all("Hello".as_ref()).await.unwrap(); } }); _ = tokio::try_join!(rt, st)?; Ok(()) }


以上为原回答,半年后捡起rust,请教了知乎大佬后

发现rust没有那么难,应该和Java难度是一个级别的,只是语言太新,chatGPT给的代码都是编译错误的,网上现成代码太少

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/9699.html

分享给朋友:

相关文章

你每天用来涨知识的手机应用程序有哪些?

你每天用来涨知识的手机应用程序有哪些?

经过深度使用和测评,从100个APP中选出的这35个超实用的app,每一个都是最硬核最有料的涨知识神器!每天打开看看,能让你提神醒脑,眼界大开,成为朋友聚会上的话题王者!双击屏幕取走哦~先放上全部APP目录,有新闻资讯类、英语学习类、读书类...

无人机真的是中国领先吗?

无人机真的是中国领先吗?

巧了这是。捡到了一台大疆。应该是别人飞丢的。在草丛中泡过水,轴承锈死,电池鼓涨已,经没有维修价值了。但作为玩电子的,免不了要把它解剖,研究一番。那么,我们看看它的国产化率能有多少吧。图片说话:解释一下吧。图一,高通 美国图二,MPS: 美国...

网易云音乐上看到过最触动的热评是什么?

网易云音乐上看到过最触动的热评是什么?

1.“昨天晚上洗澡的时候,我忘记拿毛巾了,喊了声妈妈帮我拿下毛巾,正当我伸出左手准备接毛巾的时候,我愣了一下,又换了右手。”希望你永远不会听懂这句话,永远都不要懂。——网易云热评《关键词》2.小时候跟着父亲去城里卖西瓜,害怕同学会看到我,就...

如何进行 Elasticsearch 调优实践?

如何进行 Elasticsearch 调优实践?

面试官心理分析这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s ,坑爹了。第一次搜索的...

有哪些是你用上了mac才知道的事?

用上了高端的Mac(已退货)才知道:原来文件夹里面的文件,你看到是8个,其实可能有12个。其中3个图标重叠在一起了,另外一个被拖动到屏幕外面了。用上了高端的Mac(已退货)才知道:原来鼠标灵敏度有问题是因为系统内置了鼠标加速度,只能用控制台...

大家都是怎么把自己的粉丝增加到1000的呢?

大家都是怎么把自己的粉丝增加到1000的呢?

截至2024年10月30日,关注者总数1137人,用时80天,增速约14人/天。2024年10月30日数据2024年8月10日开始创作,连续一周,1个关注者都没有。创作第7天,得到第一个关注,7天时间,写了8篇回答。当天得到关注,激动的心情...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。