Aracılığıyla paylaş


shared_future Sınıfı

Zaman uyumsuz dönüş nesnesini açıklar. Gelecekteki bir nesnenin aksine, zaman uyumsuz bir sağlayıcı herhangi bir sayıda shared_future nesneyle ilişkilendirilebilir.

Sözdizimi

template <class Ty>
class shared_future;

Açıklamalar

Boş bir nesnede , operator=ve yıkıcı dışında validbir shared_future yöntem çağırmayın.

shared_future nesneler eşitlenmez. Birden çok iş parçacığından aynı nesne üzerinde yöntemleri çağırmak, öngörülemeyen sonuçlara sahip bir veri yarışına neden olur.

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
shared_future Bir shared_future nesne oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
get İlişkili zaman uyumsuz durumda depolanan sonucu alır.
geçerli Nesnenin boş olup olmadığını belirtir.
beklemek İlişkili zaman uyumsuz durum hazır olana kadar geçerli iş parçacığını engeller.
wait_for İlişkili zaman uyumsuz durum hazır olana kadar veya belirtilen süre geçene kadar engeller.
wait_until İlişkili zaman uyumsuz durum hazır olana kadar veya belirli bir noktaya kadar engeller.

Ortak İşleçler

Veri Akışı Adı Açıklama
shared_future::operator= İlişkili yeni bir zaman uyumsuz durum atar.

Gereksinimler

Üst bilgi:<gelecek>

Ad alanı: std

shared_future::get

İlişkili zaman uyumsuz durumda depolanan sonucu alır.

const Ty& get() const;

Ty& get() const;

void get() const;

Açıklamalar

Sonuç bir özel durumsa, yöntemi bunu yeniden oluşturur. Aksi takdirde sonuç döndürülür.

Sonucu almadan önce, ilişkili zaman uyumsuz durum hazır olana kadar bu yöntem geçerli iş parçacığını engeller.

Kısmi özelleştirme shared_future<Ty&>için, depolanan değer, dönüş değeri olarak zaman uyumsuz sağlayıcıya geçirilen nesneye etkili bir başvurudur.

Özelleştirme shared_future<void>için depolanmış değer olmadığından yöntemi döndürür void.

shared_future::operator=

Belirtilen nesneden ilişkili zaman uyumsuz durumu aktarır.

shared_future& operator=(shared_future&& Right) noexcept;
shared_future& operator=(const shared_future& Right);

Parametreler

Right
Bir shared_future nesnesi.

Dönüş Değeri

*this

Açıklamalar

İlk işleç için, Right artık işlemden sonra ilişkili zaman uyumsuz duruma sahip değildir.

İkinci yöntem için Right, ilişkili zaman uyumsuz durumunu korur.

shared_future::shared_future Oluşturucu

Bir shared_future nesne oluşturur.

shared_future() noexcept;
shared_future(future<Ty>&& Right) noexcept;
shared_future(shared_future&& Right) noexcept;
shared_future(const shared_future& Right);

Parametreler

Right
Gelecek veya shared_future nesne.

Açıklamalar

İlk oluşturucu, ilişkili zaman uyumsuz durumuna sahip olmayan bir shared_future nesne oluşturur.

İkinci ve üçüncü oluşturucular bir shared_future nesne oluşturur ve ilişkili zaman uyumsuz durumu Sağdan aktarır. Sağ artık ilişkili bir zaman uyumsuz duruma sahip değil.

Dördüncü oluşturucu, Right ile aynı ilişkili zaman uyumsuz duruma sahip bir shared_future nesne oluşturur.

shared_future::valid

Nesnenin ilişkili zaman uyumsuz durumuna sahip olup olmadığını belirtir.

bool valid() noexcept;

Dönüş Değeri

true nesnenin ilişkili bir zaman uyumsuz durumu varsa; aksi takdirde , false.

shared_future::wait

İlişkili zaman uyumsuz durum hazır olana kadar geçerli iş parçacığını engeller.

void wait() const;

Açıklamalar

İlişkili zaman uyumsuz durum yalnızca zaman uyumsuz sağlayıcısı bir dönüş değeri depoladıysa veya bir özel durum depoladıysa hazır olur.

shared_future::wait_for

İlişkili zaman uyumsuz durum hazır olana kadar veya belirtilen süre geçene kadar geçerli iş parçacığını engeller.

template <class Rep, class Period>
future_status wait_for(
    const chrono::duration<Rep, Period>& Rel_time) const;

Parametreler

Rel_time
İş parçacığının engelleyebilecekleri maksimum zaman aralığını belirten chrono::d uration nesnesi.

Dönüş Değeri

Geri dönme nedenini gösteren bir future_status.

Açıklamalar

İlişkili zaman uyumsuz durum yalnızca zaman uyumsuz sağlayıcısı bir dönüş değeri depoladıysa veya bir özel durum depoladıysa hazır olur.

shared_future::wait_until

İlişkili zaman uyumsuz durum hazır olana kadar veya belirtilen bir zaman noktasından sonraya kadar geçerli iş parçacığını engeller.

template <class Clock, class Duration>
future_status wait_until(
    const chrono::time_point<Clock, Duration>& Abs_time) const;

Parametreler

Abs_time
İş parçacığının engelini kaldırabileceği zamanı belirten bir chrono::time_point nesnesi.

Dönüş Değeri

Geri dönme nedenini gösteren bir future_status.

Açıklamalar

İlişkili zaman uyumsuz durum yalnızca zaman uyumsuz sağlayıcısı bir dönüş değeri depoladıysa veya bir özel durum depoladıysa hazır olur.

Ayrıca bkz.

Üst Bilgi Dosyaları Başvurusu
<gelecek>