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::Activate yöntemi