IProgressChannel Interfejs
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wspólny interfejs raportowania postępu. Oczekuje się, że interfejs kanału postępu jest używany tylko z jednego wątku.
Obsługiwany przepływ pracy:
- Utwórz kanał za pomocą polecenia StartProgressChannel(String).
- Wywołaj SetHeader(ProgressHeader, Action<IProgressEntry>) dowolną liczbę razy (w tym 0). Każde wywołanie SetHeader(ProgressHeader, Action<IProgressEntry>) zastępuje poprzednie.
- Punkty kontrolne raportu (co najmniej 0) wywołując polecenie Checkpoint(Nullable<Double>[]).
- Powtórz kroki 2–3 tak często, jak to konieczne.
- Usuwanie kanału.
public interface IProgressChannel : IDisposable, Microsoft.ML.Runtime.IProgressChannelProvider
type IProgressChannel = interface
interface IProgressChannelProvider
interface IDisposable
Public Interface IProgressChannel
Implements IDisposable, IProgressChannelProvider
- Implementuje
Metody
Checkpoint(Nullable<Double>[]) |
Prześlij wpis "checkpoint". Te wpisy mają gwarancję dostarczenia do odbiornika postępu, jeśli jest zainteresowany. Zazwyczaj zawierałoby to pewne metryki pośrednie, które są obliczane tylko w określonych momentach (punktach kontrolnych) obliczeń. Na przykład usługa SDCA może zgłaszać punkt kontrolny za każdym razem, gdy oblicza utratę, lub LBFGS może zgłosić punkt kontrolny każdej iteracji. Jedyny parametr ,
|
SetHeader(ProgressHeader, Action<IProgressEntry>) |
Skonfiguruj strukturę raportowania:
Można wywołać SetHeader(ProgressHeader, Action<IProgressEntry>) wiele razy (lub nie), niezależnie od tego, czy obliczenie jest uruchomione, czy nie. Ze względu na synchronizację obliczenia nie powinny odmawiać wywołań do "starych" |
StartProgressChannel(String) |
Utwórz kanał postępu dla obliczeń o nazwie |