1

何かを行う前に、Web ページを数秒間待機させる必要があります。「セキュリティ」上の理由でThreadクラスを使用できないため、そのSleepメソッドを呼び出すことができないとしましょう (質問しないでください)。

私はこのソリューションをMcGyvered:

DateTime foo = DateTime.Now.AddSeconds(5);

while (DateTime.Now < foo) {
    /*noop*/
}

コンソール アプリケーションと、今行った単純なページで機能しました。私はこれを使用する半分の心を持っていますが、私の影の自己の最も暗い隅に引っかかっている何かが、これを行うことによって自分自身の運命への道を開いているだけだと私に言い続けています. 引っ掛かりがあるように感じますが、それが何であるかはわかりません。

安全に使用できますか?それは正気ですか?

4

1 に答える 1

2

これを試して:

Mutex m = new Mutex();
w.WaitOne();
m.WaitOne(TimeSpan.FromSeconds(5));

もちろん、これはハックです。しかし、あなたの要件は使用しないことThread.Sleepです。

または、5 秒間スリープする Web サービスを呼び出します。そうすれば、少なくともビジー ループで CPU を消費しません。

于 2013-07-11T21:27:44.830 に答える