Aracılığıyla paylaş


IVirtualProcessorRoot::Deactivate yöntemi

Yürütme içeriği gönderme durdurmak yürütülmekte olan bu sanal işlemcisi kök parçacığı proxy neden olur.Bir arama için yürütme iş parçacığı proxy devam Activate yöntemi.

virtual bool Deactivate(
   _Inout_ IExecutionContext * pContext
) =0;

Parametreler

  • pContext
    Şu anda bu kök tarafından dağıtıldığı içerik.

Dönüş Değeri

Bir Boole değeri.Değeri true iş parçacığı proxy tarafından döndürülen gösterir Deactivate yöntemine yapılan bir çağrıya yanıt Activate yöntemi.Değeri false iş parçacığı proxy Kaynak Yöneticisi'nde bir bildirim olayına yanıt olarak yönteminden döndürülen gösterir.Bir kullanıcı modu ile zamanlanabilir (ums) iş parçacığı Zamanlayıcı üzerinde bu öğeleri Zamanlayıcının tamamlanma listesinde belirdiklerine ve Zamanlayıcı bunları işlemek için gerekli gösterir.

Notlar

Sanal işlemci kök, Zamanlayıcı işlerinizi bulamadığında yürütme geçici olarak durdurmak için bu yöntemi kullanın.Çağrı Deactivate yöntemi gerekir kaynaklanan içinden Dispatch sanal işlemcisi kök ile en son etkinleştirilmesinden yürütme içeriği yöntemi.Diğer bir deyişle, iş parçacığı proxy yürütmesini Deactivate sanal işlemcisi kök yürütülmekte bir yöntem olmalıdır.Üzerinde yürütülen değil sanal işlemcisi kök yöntemini çağırarak tanımsız davranışlara neden.

Devre dışı bırakılan sanal işlemcisi kök yapılan bir çağrıyla woken Activate yöntemi, aynı bağımsız değişken olarak geçildi Deactivate yöntemi.Zamanlayıcı, çağıran vermekle sorumlu Activate ve Deactivate yöntemleri Eşli, ancak belirli bir sırayla alınabilmesi için gerekli değildir.Kaynak Yöneticisi bir çağrı alma ele Activate yöntemine yapılan bir çağrı alır önce Deactivate geliyordu için yöntem.

Sanal işlemci kök awakens ve gelen bir dönüş değeri Deactivate yöntemi, değer false, Zamanlayıcı ums tamamlanma listesi aracılığıyla sorgulamak IUMSCompletionList::GetUnblockNotifications yöntemi, işlem, bu bilgilere ve sonradan çağrısı Deactivate yöntemi yeniden.Bu kadar süre tekrarlanması gereken Deactivate yöntemi bir değer döndürür true.

invalid_argumentAtılan bağımsız pContext değeri NULL.

invalid_operationsanal işlemci kök asla etkinleştirilmişse atılır veya bağımsız değişken pContext en son olarak bu sanal işlemcisi kök tarafından dağıtılan yürütme içeriği göstermiyor.

Kök sanal işlemci etkinliğini durdurma eylemi bir temel donanım iş parçacığı abonelik düzeyini azaltır.Abonelik düzeyleri hakkında daha fazla bilgi için bkz: IExecutionResource::CurrentSubscriptionLevel.

Gereksinimler

Başlık: concrtrm.h

Namespace: eşzamanlılık

Ayrıca bkz.

Başvuru

IVirtualProcessorRoot yapısı

IVirtualProcessorRoot::Activate yöntemi

IExecutionResource::CurrentSubscriptionLevel yöntemi

IUMSCompletionList::GetUnblockNotifications yöntemi