Send e Sync
Como o Rust sabe proibir o acesso compartilhado entre threads? A resposta está em duas características:
Send: um tipoTéSendse for seguro mover umTentre threadsSync: um tipoTéSyncse for seguro mover um&Tentre threads
Send e Sync são unsafe traits. O compilador os derivará automaticamente para seus tipos desde que contenham apenas os tipos Send e Sync. Você também pode implementá-los manualmente quando souber que são válidos.
- One can think of these traits as markers that the type has certain thread-safety properties.
- They can be used in the generic constraints as normal traits.