Aracılığıyla paylaş


Platform::Agile Sınıfı

Çevik nesne olarak MashalingBehavior=Standard olan bir nesneyi temsil eder ve bu da çalışma zamanı iş parçacığı oluşturma özel durumlarının olasılığını büyük ölçüde azaltır. çevik Agile<T> olmayan nesnenin aynı veya farklı bir iş parçacığını çağırmasını veya bu nesneden çağrılmalarını sağlar. Daha fazla bilgi için bkz . İş Parçacığı Oluşturma ve Sıralama.

Sözdizimi

template <typename T>
class Agile;

Parametreler

T
Çevik olmayan sınıfın tür adı.

Açıklamalar

Windows Çalışma Zamanı sınıfların çoğu çevik. Çevik bir nesne, aynı veya farklı bir iş parçacığında bir in-proc veya out-of-proc nesnesi çağırabilir veya tarafından çağrılabilir. Bir nesne çevik değilse, çevik olmayan nesneyi çevik olan bir Agile<T> nesneye sarmalar. Agile<T> Ardından nesne sıralanabilir ve temel alınan çevik olmayan nesne kullanılabilir.

Agile<T> sınıfı yerel, standart bir C++ sınıfıdır ve gerektiriragile.h. Çevik olmayan nesneyi ve Çevik nesnesinin bağlamını temsil eder. Bağlam, çevik bir nesnenin iş parçacığı modelini ve sıralama davranışını belirtir. İşletim sistemi, bir nesnenin nasıl sıraleneceğini belirlemek için bağlamı kullanır.

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
Çevik::Çevik Çevik sınıfının yeni bir örneğini başlatır.
Çevik::~Çevik Yıkıcı Çevik sınıfının geçerli örneğini yok eder.

Genel Yöntemler

Veri Akışı Adı Açıklama
Çevik::Get Geçerli Çevik nesnesi tarafından temsil edilen nesneye bir tanıtıcı döndürür.
Çevik::GetAddressOf Geçerli Çevik nesnesini yeniden başlatıp bir tanıtıcının adresini türünde Tbir nesneye döndürür.
Agile::GetAddressOfForInOut Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tutamacının adresini döndürür.
Çevik::Yayın Geçerli Çevik nesnesinin temel nesnesini ve bağlamını atar.

Ortak İşleçler

Veri Akışı Adı Açıklama
Çevik::operator-> Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tanıtıcısını alır.
Agile::operator= Belirtilen değeri geçerli Çevik nesnesine atar.

Devralma Hiyerarşisi

Object

Agile

Gereksinimler

Desteklenen en düşük istemci: Windows 8

Desteklenen en düşük sunucu: Windows Server 2012

Ad Alanı: Platform

Üst bilgi: agile.h

Çevik::Çevik Oluşturucu

Çevik sınıfının yeni bir örneğini başlatır.

Sözdizimi

Agile();
Agile(T^ object);
Agile(const Agile<T>& object);
Agile(Agile<T>&& object);

Parametreler

T
template typename parametresi tarafından belirtilen bir tür.

object
Bu oluşturucunun ikinci sürümünde, yeni bir Çevik örneği başlatmak için kullanılan bir nesne. Üçüncü sürümde, yeni Çevik örneğine kopyalanan nesne. Dördüncü sürümde, yeni Çevik örneğine taşınan nesne.

Açıklamalar

Bu oluşturucunun ilk sürümü varsayılan oluşturucudur. İkinci sürüm, parametresi tarafından belirtilen nesneden yeni Çevik örnek sınıfını object başlatır. Üçüncü sürüm kopya oluşturucudur. Dördüncü sürüm, taşıma oluşturucusdur. Bu oluşturucu özel durumlar oluşturamaz.

Çevik::~Çevik Yıkıcı

Çevik sınıfının geçerli örneğini yok eder.

Sözdizimi

~Agile();

Açıklamalar

Bu yıkıcı, geçerli Çevik nesnesi tarafından temsil edilen nesneyi de serbest bırakır.

Çevik::Get Yöntemi

Geçerli Çevik nesnesi tarafından temsil edilen nesneye bir tanıtıcı döndürür.

Sözdizimi

T^ Get() const;

Dönüş Değeri

Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tanıtıcısı.

Dönüş değerinin türü aslında gizli olmayan bir iç türdür. Dönüş değerini tutmanın kullanışlı bir yolu, bunu tür kesinti anahtar sözcüğüyle bildirilen bir değişkene auto atamaktır. Örneğin, auto x = myAgileTvariable->Get();.

Agile::GetAddressOf Yöntemi

Geçerli Çevik nesnesini yeniden başlatıp bir tanıtıcının adresini türünde Tbir nesneye döndürür.

Sözdizimi

T^* GetAddressOf() throw();

Parametreler

T
template typename parametresi tarafından belirtilen bir tür.

Dönüş Değeri

türündeki Tbir nesneye yönelik tanıtıcının adresi.

Açıklamalar

Bu işlem, varsa türünde Tbir nesnenin geçerli gösterimini serbest bırakır; Çevik nesnesinin veri üyelerini yeniden başlatacak; geçerli iş parçacığı bağlamını alır ve sonra çevik olmayan bir nesneyi temsil edebilen tanıtıcıdan nesneye değişkenin adresini döndürür. Çevik sınıf örneğinin bir nesneyi temsil etmesine neden olmak için atama işlecini (Agile::operator=) kullanarak nesneyi Çevik sınıf örneğine atayın.

Agile::GetAddressOfForInOut Yöntemi

Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tutamacının adresini döndürür.

Sözdizimi

T^* GetAddressOfForInOut()  throw();

Parametreler

T
template typename parametresi tarafından belirtilen bir tür.

Dönüş Değeri

Geçerli Çevik nesnesi tarafından temsil edilen nesne tanıtıcısının adresi.

Açıklamalar

Bu işlem geçerli iş parçacığı bağlamını alır ve ardından bir tanıtıcının adresini temel alınan nesneye döndürür.

Agile::Release Yöntemi

Geçerli Çevik nesnesinin temel nesnesini ve bağlamını atar.

Sözdizimi

void Release() throw();

Açıklamalar

Geçerli Çevik nesnesinin temel alınan nesnesi ve bağlamı varsa atılır ve çevik nesnesinin değeri null olarak ayarlanır.

Agile::operator-> İşleci

Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tanıtıcısını alır.

Sözdizimi

T^ operator->() const throw();

Dönüş Değeri

Geçerli Çevik nesnesi tarafından temsil edilen nesnenin tanıtıcısı.

Bu işleç aslında açıklanmayan bir iç tür döndürür. Dönüş değerini tutmanın kullanışlı bir yolu, bunu tür kesinti anahtar sözcüğüyle bildirilen bir değişkene auto atamaktır.

Agile::operator= İşleci

Belirtilen nesneyi geçerli Çevik nesnesine atar.

Sözdizimi

Agile<T> operator=( T^ object ) throw();
Agile<T> operator=( const Agile<T>& object ) throw();
Agile<T> operator=( Agile<T>&& object ) throw();
T^ operator=( IUnknown* lp ) throw();

Parametreler

T
Şablon tür adı tarafından belirtilen tür.

object
Geçerli Çevik nesnesine kopyalanan veya taşınan bir nesnenin nesnesi veya tanıtıcısı.

Lp
Bir nesnenin IUnknown arabirim işaretçisi.

Dönüş Değeri

Türünde bir nesnenin tanıtıcısı T

Açıklamalar

Atama işlecinin ilk sürümü bir tanıtıcıyı geçerli Çevik nesnesine bir başvuru türüne kopyalar. İkinci sürüm, bir Çevik türüne başvuruyu geçerli Çevik nesnesine kopyalar. Üçüncü sürüm, bir Çevik türünü geçerli Çevik nesnesine taşır. Dördüncü sürüm, bir işaretçiyi geçerli Çevik nesnesine com nesnesine taşır.

Atama işlemi, geçerli Çevik nesnesinin bağlamını otomatik olarak kalıcı hale getirir.

Ayrıca bkz.

Platform Ad Alanı