Ich bin auf der Suche nach etwas nett und einfach. Zum Beispiel:Einfachster Weg, um Code zu einem bestimmten Zeitpunkt in. NET
RunAfter(3, delegate() { z = 5; }); // run after 3 seconds
FnThatTakes5Seconds();
In meinen Fällen möchte ich einige Threading-Code testen und zu etwas in der Mitte eines anderen Funktionsaufruf passieren haben.
Das funktioniert, aber es ist ein bisschen ausführlich. – BCS
Wenn dies als Variable deklariert ist, wird dies wahrscheinlich nicht im Release-Modus funktionieren; Der Timer wird wahrscheinlich Müll gesammelt werden, bevor es ausgelöst wird. Sie müssen wahrscheinlich einen GC.KeepAlive (_timer) am Ende der Methode hinzufügen, um dies zu umgehen. –
Und im Einklang mit Gregs Aussage eliminiert diese Art die Einfachheit eines einzelnen Funktionsaufrufs. Dies ist viel besser einmal in eine Methode eingekapselt und wiederverwendet. –