Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

cancel safety

Whether stopping a future halfway can lose data or leave things half-done.

Dropping a future cancels it at its current await point; a cancel-safe operation (e.g. mpsc::Receiver::recv) loses nothing if cancelled there, which matters inside select! loops.

Loading interactive…

Examples

  • timeout(Duration::from_millis(100), book_van()) drops the future at 100 ms, so its BayReservation guard's Drop runs and releases the bay, but the van is never booked.

Read the full section →