• 2024-11-05tklog日志库使用
    git地址https://github.com/donnie4w/tklogtoml[dependencies]tklog="0.2.6"tokio="1.40"log="0.4"结合系统自带的日志库usestd::{thread,time::Duration};usetklog::{Format,LEVEL,LOG};fntest_synclog(){//initLOGLO
  • 2024-10-29rust+tikio实现websocket
    toml[dependencies]libc="0.2.98"tokio={version="1.8.1",features=["sync","time","rt-multi-thread","macros"]}tokio-tungstenite="0.15.0"tungstenite="0.14.0"futu
  • 2024-10-22Tokio信号量:掌握并发控制的艺术
    在现代并发编程中,合理控制任务的并发执行是确保系统稳定性和资源有效利用的关键。Tokio,作为Rust生态中强大的异步运行时,为我们提供了一系列的同步原语,其中信号量(Semaphore)尤为强大。它允许我们精确控制对共享资源的并发访问,是实现限流和防止资源耗尽的理想工具。本文将深入
  • 2024-09-02第十九章 rust服务器开发:axum框架详解
    注意本系列文章已升级、转移至我的自建站点中,本章原文为:rust服务器开发:axum详解目录注意一、前言二、基本使用三、路由定义四、参数提取五、响应体六、共享状态七、中间件一、前言因为rust拥有着极高的性能,加上tokio这个非常优秀的运行时,这使得rust很
  • 2024-07-24rust poem sse
    Cargo.toml:[package]name="sse"version="0.1.0"edition="2021"[dependencies]futures-util="0.3.30"poem={version="3.0.3",features=["sse"]}tokio={version="1.39.1&quo
  • 2024-07-24rust axum sse
    Cargo.toml:[package]name="sse"version="0.1.0"edition="2021"[dependencies]axum="0.7.5"axum-extra={version="0.9.3",features=["typed-header"]}eventsource-stream="0.2
  • 2024-06-13[记]tokio学习
    usestd::thread;usestd::time;usetokio::time::{sleep,Duration};fnblocking_call()->String{foridxin0..5{thread::sleep(time::Duration::from_secs(1));println!("---{}",idx);}"Finallydone".
  • 2023-12-24新中源台湾版六仔系统平台安装编译出租的注意方法和处理
    T-G: zy369369在同步的Rust方法中调用异步代码经常会导致一些问题,特别是对于不熟悉异步Rustruntime底层原理的初学者。本人网站有详细介绍多种方法http://www.jizhifuke.com在做GreptimeDB项目的时候,我们遇到一个关于在同步Rust方法中调用异步代码的问题。经过一系列
  • 2023-11-30探索 Tokio Runtime丨Fabarta 技术专栏
    导读 本文将带您探索TokioRuntime的核心组件,同时会介绍其在ArcGraph项目中的应用。阅读本文后,您将会对TokioRuntime的基本原理有一个清晰的了解。此外,您也会对如何在项目中用好Tokio有很好的认知。01Tokio概述Rust是一门新兴的系统编程语言,它的独特之处在于成功
  • 2023-11-05Tokio 在同步上下文中执行异步代码
    从spawn说起Tokio库中有两个同名的量,它们都叫spawn,但是却有着显著的区别:其中一个是tokio::runtime::Runtime结构体的方法(method),另一个是tokio::task模块的一个函数,同时也是你使用tokio::spawn时直接使用的那个.从这个特征来看,两者使用的方法是截然不同
  • 2023-09-19[记] tokio多任务的延时
    usetokio::{time};asyncfnhh1(){for_in0..10{time::sleep(std::time::Duration::from_secs(3)).await;println!("11");}}asyncfnhh2(){for_in0..20{time::sleep(std::time::Duration::from_secs(2)).awai
  • 2023-06-05文盘Rust -- tokio绑定cpu实践
    tokio是rust生态中流行的异步运行时框架。在实际生产中我们如果希望tokio应用程序与特定的cpucore绑定该怎么处理呢?这次我们来聊聊这个话题。首先我们先写一段简单的多任务程序。usetokio::runtime;pubfnmain(){letrt=runtime::Builder::new_multi_thread(
  • 2023-05-19About #[tokio::test]
    #[tokio::test]运行时#[tokio::test]运行时和#[tokio::main]的默认值是不一样的,前者默认单线程,后者默认多线程:Thedefaulttestruntimeissingle-threaded.所以有的时候运行和测试的结果可能不同。可以设置为多线程的风格:#[tokio::test(flavor="multi_thread",wor
  • 2023-04-14文盘Rust -- 用Tokio实现简易任务池
    作者:京东科技贾世闻Tokio无疑是Rust世界中最优秀的异步Runtime实现。非阻塞的特性带来了优异的性能,但是在实际的开发中我们往往需要在某些情况下阻塞任务来实现某些功能。我们看看下面的例子fnmain(){letmax_task=1;letrt=runtime::Builder::
  • 2022-12-22tokio官方文档中一些值得记录的
    Rust真tema难啊...任务Tokio任务是一个异步绿色线程,它们通过向tokio::spawn中传递一个async块来创建。tokio::spawn函数返回一个JoinHandle,调用者可能使用它来与被创建的
  • 2022-12-05tokio file.rs
    mirrors.ustc.edu.cn-12df342d903acd47/tokio-1.21.2/src/fs/file.rs//!Typesforworkingwith[`File`].//!//![`File`]:Fileuseself::State::*;usecrate::f
  • 2022-11-26《BEGINNING RUST PROGRAMMING》---读书随记(9)
    BEGINNINGRUSTPROGRAMMINGAuthor:RicMessier如果需要电子书的小伙伴,可以留下邮箱,看到了会发送的Chapter10WebCommunicationsCLIENTCOMMUNICATIONusehyper:
  • 2022-11-07008 Rust 异步编程,select 宏介绍
    select宏select宏也允许并发的执行Future,但是和join、try_join不同的是,select宏只要有一个Future返回,就会返回。示例源码usefutures::{select,future::FutureExt,pin_mut