Aracılığıyla paylaş


IUMSScheduler Yapısı

Eşzamanlılık Çalışma Zamanı Resource Manager'ının kullanıcı modu zamanlanabilir (UMS) iş parçacıklarını teslim etmelerini isteyen bir iş zamanlayıcısının soyutlamasına yönelik arabirim. Resource Manager, UMS iş parçacığı zamanlayıcılarıyla iletişim kurmak için bu arabirimi kullanır. Arabirim IUMSScheduler , arabirimden devralır IScheduler .

Sözdizimi

struct IUMSScheduler : public IScheduler;

Üyeler

Genel Yöntemler

Veri Akışı Adı Açıklama
IUMSScheduler::SetCompletionList IUMSCompletionList UMS iş parçacığı zamanlayıcısına bir arabirim atar.

Açıklamalar

Resource Manager ile iletişim kuran özel bir zamanlayıcı uyguluyorsanız ve UMS iş parçacıklarının sıradan Win32 iş parçacıkları yerine zamanlayıcınıza verilmesini istiyorsanız, arabiriminin IUMSScheduler bir uygulamasını sağlamanız gerekir. Ayrıca, zamanlayıcı ilke anahtarının SchedulerKind ilke değerini olarak UmsThreadDefaultayarlamanız gerekir. İlke UMS iş parçacığını belirtiyorsa, IScheduler IResourceManager::RegisterScheduler yöntemine parametre olarak geçirilen arabirim bir IUMSScheduler arabirim olmalıdır.

Resource Manager, UMS iş parçacıklarını yalnızca UMS özelliğine sahip işletim sistemlerinde teslim eder. Windows 7 ve üzeri sürüme sahip 64 bit işletim sistemleri UMS iş parçacıklarını destekler. Anahtar değerine UmsThreadDefault ayarlanmış bir zamanlayıcı ilkesi SchedulerKind oluşturursanız ve temel alınan platform UMS'yi desteklemiyorsa, bu ilkedeki SchedulerKind anahtarın değeri olarak ThreadSchedulerdeğiştirilir. UMS iş parçacıklarını almayı beklemeden önce bu ilke değerini her zaman geri okumanız gerekir.

Arabirim IUMSScheduler , bir zamanlayıcı ile Resource Manager arasındaki iki yönlü iletişim kanalının bir ucudur. Diğer uç, Resource Manager tarafından IResourceManager uygulanan ve ISchedulerProxy arabirimleriyle temsil edilir.

Devralma Hiyerarşisi

IScheduler

IUMSScheduler

Gereksinimler

Üst bilgi: concrtrm.h

Ad alanı: eşzamanlılık

IUMSScheduler::SetCompletionList Yöntemi

IUMSCompletionList UMS iş parçacığı zamanlayıcısına bir arabirim atar.

virtual void SetCompletionList(_Inout_ IUMSCompletionList* pCompletionList) = 0;

Parametreler

pCompletionList
Zamanlayıcının tamamlanma listesi arabirimi. Zamanlayıcı başına tek bir liste vardır.

Açıklamalar

Resource Manager, zamanlayıcı kaynakların ilk ayırmasını istedikten sonra UMS iş parçacıkları istediğini belirten bir zamanlayıcıda bu yöntemi çağırır. Zamanlayıcı, UMS iş parçacığı proxy'lerinin engelinin ne zaman kaldırılmış olduğunu belirlemek için arabirimini kullanabilir IUMSCompletionList . Bu arabirime yalnızca UMS zamanlayıcısına atanmış bir sanal işlemci kökünde çalışan bir iş parçacığı ara sunucusundan erişmek geçerlidir.

Ayrıca bkz.

Eşzamanlılık Ad Alanı
PolicyElementKey
IScheduler Yapısı
IUMSCompletionList Yapısı
IResourceManager Yapısı