Rust

async/await

async fonksiyonlar, Future trait, tokio runtime, async bloklar, .await sözdizimi, Streams, Pin<T>, iptal, executor desenleri

22 mülakat soruları·
Mid-Level
1

Rust'ta async anahtar kelimesiyle bildirilen bir fonksiyon ne döndürür?

Cevap

Bir async fonksiyon, otomatik olarak Future trait'ini implemente eden bir tip döndürür. Derleyici, fonksiyon gövdesini Future'ı implemente eden bir durum makinesine (state machine) dönüştürür. Dönüş değeri hemen hesaplanmaz: yalnızca Future .await ile beklendiğinde veya bir runtime tarafından çalıştırıldığında hesaplanır.

2

Rust'ta Future trait'inin temel rolü nedir?

Cevap

Future trait'i, henüz tamamlanmamış olabilecek bir asenkron hesaplamayı temsil eder. poll metodu, executor'ın Future'ın hazır mı (Poll::Ready) yoksa beklemesi mi gerektiğini (Poll::Pending) kontrol etmesini sağlar. Bu, Rust'taki asenkronluğun temel mekanizmasıdır ve bloklamayan, verimli bir yürütme sağlar.

3

Rust'ta async kodu çalıştırmak için neden tokio gibi bir runtime gereklidir?

Cevap

Rust, dili minimal tutmak ve runtime'ın ihtiyaca göre seçilebilmesini sağlamak için standart kütüphanesine asenkron bir runtime dahil etmez. tokio gibi bir runtime, Future'ları poll eden executor'ı, görevleri yöneten scheduler'ı ve asenkron I/O'yu sağlar. Bir runtime olmadan Future'lar asla çalıştırılmaz.

4

Rust'ta async block ile async function arasındaki fark nedir?

5

Rust'ta bir Future üzerinde .await kullanıldığında ne olur?

+19 mülakat soruları

Bir sonraki mülakatın için Rust'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla