# async/await (Rust) > async-Funktionen, Future-Trait, tokio-Runtime, async-Blöcke, .await-Syntax, Streams, Pin, Abbruch, Executor-Patterns - 22 Interview-Fragen - Mid-Level - [Interview-Fragen: Rust](https://sharpskill.dev/de/technologies/rust/interviewfragen.md) ## 1. Was gibt eine mit dem Schlüsselwort async deklarierte Funktion in Rust zurück? **Antwort** Eine async-Funktion gibt automatisch einen Typ zurück, der den Future-Trait implementiert. Der Compiler wandelt den Funktionsrumpf in eine Zustandsmaschine um, die Future implementiert. Der Rückgabewert wird nicht sofort berechnet: Er wird erst berechnet, wenn der Future mit .await abgewartet oder von einer Runtime ausgeführt wird. ## 2. Was ist die Hauptaufgabe des Future-Traits in Rust? **Antwort** Der Future-Trait repräsentiert eine asynchrone Berechnung, die möglicherweise noch nicht abgeschlossen ist. Seine poll-Methode ermöglicht es dem Executor zu prüfen, ob der Future bereit ist (Poll::Ready) oder warten muss (Poll::Pending). Das ist der grundlegende Mechanismus der Asynchronität in Rust und ermöglicht eine nicht blockierende und effiziente Ausführung. ## 3. Warum ist eine Runtime wie tokio notwendig, um async-Code in Rust auszuführen? **Antwort** Rust enthält keine asynchrone Runtime in seiner Standardbibliothek, um die Sprache minimal zu halten und die Wahl der Runtime je nach Bedarf zu ermöglichen. Eine Runtime wie tokio stellt den Executor bereit, der Futures pollt, den Scheduler zur Verwaltung von Tasks sowie asynchrone I/O. Ohne eine Runtime würden Futures niemals ausgeführt. ## 19 weitere Fragen verfügbar - Was ist der Unterschied zwischen einem async block und einer async function in Rust? - Was passiert, wenn man .await auf einen Future in Rust anwendet? Kostenlos registrieren: https://sharpskill.dev/de/login ## Weitere Rust-Interviewthemen - [Rust-Grundlagen](https://sharpskill.dev/de/technologies/rust/interviewfragen/rust-basics.md): 25 Fragen, Junior - [Ownership & Borrowing](https://sharpskill.dev/de/technologies/rust/interviewfragen/ownership-borrowing.md): 22 Fragen, Junior - [Structs & Enums](https://sharpskill.dev/de/technologies/rust/interviewfragen/structs-enums.md): 20 Fragen, Junior - [Fehlerbehandlung](https://sharpskill.dev/de/technologies/rust/interviewfragen/error-handling.md): 18 Fragen, Junior - [Collections](https://sharpskill.dev/de/technologies/rust/interviewfragen/collections.md): 20 Fragen, Junior - [Module & Packages](https://sharpskill.dev/de/technologies/rust/interviewfragen/modules-packages.md): 18 Fragen, Junior - [Traits](https://sharpskill.dev/de/technologies/rust/interviewfragen/traits.md): 22 Fragen, Mid-Level - [Generics](https://sharpskill.dev/de/technologies/rust/interviewfragen/generics.md): 20 Fragen, Mid-Level - [Lifetimes](https://sharpskill.dev/de/technologies/rust/interviewfragen/lifetimes.md): 20 Fragen, Mid-Level - [Iterators & Closures](https://sharpskill.dev/de/technologies/rust/interviewfragen/iterators-closures.md): 22 Fragen, Mid-Level - [Smart Pointers](https://sharpskill.dev/de/technologies/rust/interviewfragen/smart-pointers.md): 22 Fragen, Mid-Level - [Concurrency Basics](https://sharpskill.dev/de/technologies/rust/interviewfragen/concurrency-basics.md): 20 Fragen, Mid-Level - [Testing](https://sharpskill.dev/de/technologies/rust/interviewfragen/testing.md): 18 Fragen, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/de/technologies/rust/interviewfragen/cargo-ecosystem.md): 18 Fragen, Mid-Level - [Pattern Matching](https://sharpskill.dev/de/technologies/rust/interviewfragen/pattern-matching.md): 18 Fragen, Mid-Level - [Makros](https://sharpskill.dev/de/technologies/rust/interviewfragen/macros.md): 20 Fragen, Mid-Level - [Serde & Serialisierung](https://sharpskill.dev/de/technologies/rust/interviewfragen/serde-serialization.md): 20 Fragen, Mid-Level - [Unsafe Rust](https://sharpskill.dev/de/technologies/rust/interviewfragen/unsafe-rust.md): 20 Fragen, Senior - [Fortgeschrittene Traits](https://sharpskill.dev/de/technologies/rust/interviewfragen/advanced-traits.md): 22 Fragen, Senior - [Fortgeschrittene Lifetimes](https://sharpskill.dev/de/technologies/rust/interviewfragen/advanced-lifetimes.md): 20 Fragen, Senior - [Type System](https://sharpskill.dev/de/technologies/rust/interviewfragen/type-system.md): 20 Fragen, Senior - [Tokio & Async I/O](https://sharpskill.dev/de/technologies/rust/interviewfragen/tokio-async.md): 22 Fragen, Senior - [Performance-Optimierung](https://sharpskill.dev/de/technologies/rust/interviewfragen/performance-optimization.md): 20 Fragen, Senior - [Memory Management](https://sharpskill.dev/de/technologies/rust/interviewfragen/memory-management.md): 20 Fragen, Senior - [Web Frameworks](https://sharpskill.dev/de/technologies/rust/interviewfragen/web-frameworks.md): 22 Fragen, Senior - [Database Integration](https://sharpskill.dev/de/technologies/rust/interviewfragen/database-integration.md): 20 Fragen, Senior - [Rust Design Patterns](https://sharpskill.dev/de/technologies/rust/interviewfragen/design-patterns.md): 20 Fragen, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/de/technologies/rust/interviewfragen/async-await