Repolode
tokio-rs

tokio-rs/tokio

Runtime assíncrono para Rust com agendamento de tarefas, I/O não bloqueante, rede e temporizadores para criar aplicações de rede confiáveis.

Estrelas
33,502
Forks
5,781
Issues abertas
440
Último commit
há 11 horas

O que é?

Tokio é uma plataforma orientada a eventos e com I/O não bloqueante para escrever aplicações assíncronas em Rust. Ela reúne um agendador de tarefas multithread com roubo de trabalho, um reator baseado na fila de eventos do sistema operacional (epoll, kqueue, IOCP e similares) e sockets TCP e UDP assíncronos.

O projeto é voltado a desenvolvedores que criam serviços de rede e outros programas com uso intenso de I/O e precisam lidar com muitas conexões simultâneas sem dedicar uma thread a cada uma. As aplicações ativam as feature flags necessárias e, em seguida, usam async/await com as funções spawn, os temporizadores e as primitivas de sincronização do runtime.

O projeto faz parte de um ecossistema mais amplo, que inclui o framework web axum, a implementação HTTP hyper, a biblioteca gRPC tonic, as abstrações de middleware tower e o framework de diagnóstico tracing.

Recursos principais

  • 01Agendador de tarefas multithread com roubo de trabalho
  • 02Sockets TCP e UDP não bloqueantes
  • 03Reator baseado em epoll, kqueue e IOCP
  • 04Temporizadores e primitivas de sincronização assíncronas
  • 05Feature flags permitem incluir apenas os componentes necessários

Casos de uso

  • Criar servidores de rede TCP ou UDP em Rust com alta concorrência
  • Escrever clientes assíncronos que chamam muitos serviços simultaneamente
  • Executar tarefas em segundo plano com uso intenso de I/O, temporizadores e cancelamento

Início rápido

  1. 1

    Adicione Tokio ao Cargo.toml com o conjunto completo de recursos

    tokio = { version = "1.54.1", features = ["full"] }
  2. 2

    Escreva o exemplo de servidor de eco TCP em main.rs e execute o projeto com cargo

Antes de usar

  • Requer a toolchain do Rust, com versão mínima compatível do Rust 1.85.
  • Tokio é uma biblioteca de runtime, portanto só é útil dentro de um projeto Rust que você mesmo compile.

Tópicos

Perguntas frequentes

O que é tokio?
Runtime assíncrono para Rust com agendamento de tarefas, I/O não bloqueante, rede e temporizadores para criar aplicações de rede confiáveis. Tokio é uma plataforma orientada a eventos e com I/O não bloqueante para escrever aplicações assíncronas em Rust. Ela reúne um agendador de tarefas multithread com roubo de trabalho, um reator baseado na fila de eventos do sistema operacional (epoll, kqueue, IOCP e similares) e sockets TCP e UDP assíncronos.
tokio é gratuito? Qual é a licença?
tokio é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
tokio ainda é mantido?
Manutenção ativa. O último commit de tokio foi em 24 de out. de 2026.
Para que posso usar tokio?
Criar servidores de rede TCP ou UDP em Rust com alta concorrência Escrever clientes assíncronos que chamam muitos serviços simultaneamente Executar tarefas em segundo plano com uso intenso de I/O, temporizadores e cancelamento
Como instalar tokio?
Adicione Tokio ao Cargo.toml com o conjunto completo de recursos: tokio = { version = "1.54.1", features = ["full"] } Escreva o exemplo de servidor de eco TCP em main.rs e execute o projeto com cargo
Onde consigo tokio?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/tokio-rs/tokio

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados