-1
ich eine Operation über While
, dass ich einfrieren wollen:Während mit Manual
do
{
ManualResetEvent.Reset(); // Here i want to wait
// Here i am doing my stuff...
}
while (some boolean value);
}
Mein ManualResetEvent
:
private static ManualResetEvent _manualResetEvent;
public static ManualResetEvent ManualResetEvent
{
get { return _manualResetEvent; }
set { _manualResetEvent = value; }
}
ManualResetEvent = new ManualResetEvent(false);
In einem gewissen Punkt in meinem Code über Button
ich möchte nur frieren meine Operation:
private void btnPause_Click(object sender, RoutedEventArgs e)
{
ManualResetEvent.WaitOne();
}
Ist das der richtige Weg, das zu tun?
auf das, was abhängig initialisieren Ihr Thread ist, wenn es Ihr UI-Thread ist, können Sie es nicht so blockieren. –
Nein, das ist kein UI-Thread – user979033
Haben Sie daran gedacht, eine Threading.Timer- und eine CancellationToken-Kombination zu verwenden? Dies würde die gleiche Funktionalität geben, ohne einen Thread zu blockieren. –