Udostępnij za pośrednictwem


IExecutionResource::Remove — Metoda

Zwraca ten zasób wykonanie Menedżera zasobów.

virtual void Remove(
   _Inout_ IScheduler * pScheduler
) =0;

Parametry

  • pScheduler
    Interfejs harmonogram, na żądanie, usunięcie tego zasobu wykonanie.

Uwagi

Metoda ta służy do zwracania zasobów wykonanie autonomicznej, jak również wykonanie zasobów skojarzonych z procesora wirtualnych katalogów głównych Menedżera zasobów.

Jeśli jest to zasób wykonanie autonomicznej otrzymane od jednej z metod ISchedulerProxy::SubscribeCurrentThread lub ISchedulerProxy::RequestInitialVirtualProcessors, wywołanie metody Remove zakończy subskrypcji wątek utworzony zasób do reprezentowania.Są wymagane, aby zakończyć wszystkie subskrypcje wątku przed zamknięciem proxy harmonogram i musi wywołać Remove z wątku, który utworzył subskrypcji.

Korzenie wirtualnego procesora, mogą być zwracane do Menedżera zasobów wywołując Remove metody, ponieważ interfejs IVirtualProcessorRoot dziedziczy z IExecutionResource interfejsu.Musisz wrócić głównego wirtualnego procesora, albo w odpowiedzi na zaproszenie do IScheduler::RemoveVirtualProcessors metody, lub po zakończeniu oversubscribed procesora wirtualnego katalogu głównego, uzyskanych z ISchedulerProxy::CreateOversubscriber metody.Dla procesora wirtualnych katalogów głównych, nie ma żadnych ograniczeń na który wątek może wywołać Remove metody.

invalid_argumentjest generowany, gdy parametr pScheduler jest ustawiona na NULL.

invalid_operationjest generowany, gdy parametr pScheduler różni się od harmonogramu zasobu wykonanie utworzono dla lub zasobem wykonanie autonomicznej, jeśli bieżący wątek różni się od wątku, który utworzył wątek subskrypcji.

Wymagania

Nagłówek: concrtrm.h

Obszar nazw: współbieżności

Zobacz też

Informacje

IExecutionResource — Struktura

invalid_argument — Klasa

invalid_operation — Klasa