Context::Unblock — Metoda
Odblokowuje kontekstu i powoduje ona stać się sprawne.
virtual void Unblock() =0;
Uwagi
Dopuszczalne jest idealnie wywołanie Unblock przed odpowiedniego wywołania metody Blok metody.Tak długo, jak wywołania Block i Unblock metody są poprawnie skojarzone, środowiska wykonawczego poprawnie obsługuje naturalnych wyścigu albo zamawiania.Unblock Wywołania pochodzące przed Block wywołania po prostu Negacja efekt Block wywołania.
Istnieje kilka wyjątków, które może zostać wygenerowany z tej metody.Jeśli kontekst próby wywołania Unblock , Metoda context_self_unblock wygeneruje wyjątek.Jeśli wzywa do Block i Unblock nie są poprawnie skojarzone (na przykład, dwa wzywa do Unblock na kontekst, który jest aktualnie uruchomiony), context_unblock_unbalanced wygeneruje wyjątek.
Należy pamiętać, że jest krytyczny okres między punktem, w którym kod publikuje jego kontekst dla innego wątku móc wywoływać Unblock metody i punktu, gdzie wywołanie metody rzeczywistej Block jest dokonywane.W tym okresie nie musisz wywołać dowolną metodę, która z kolei może blokować i odblokowywać dla powody (na przykład pobieranie blokady).Wzywa do Block i Unblock metody nie Śledź powód zablokowania i odblokowania.Tylko jeden obiekt powinien mieć prawo własności Block i Unblock para.
Wymagania
Nagłówek: concrt.h
Obszar nazw: współbieżności