2

ftp スクリプトを 10 秒または 30 秒ごとに実行するにはどうすればよいですか?

FTP スクリプト:

FtpWebRequest makedir = (FtpWebRequest)WebRequest.Create("ftp://xxx.xxx.xxx.xxx/" + System.Environment.MachineName + "___" + System.Environment.UserName + @"/");
makedir.Method = WebRequestMethods.Ftp.MakeDirectory;
makedir.Credentials = new NetworkCredential("usr", @"passwd");
FtpWebResponse makedirStream = (FtpWebResponse)makedir.GetResponse();
makedirStream.Close();

スレッドでのスリープの使用とタイマーの使用について読んでいました..しかし、どちらの使用方法もわかりません..問題は、1回だけでなく30秒ごとに再実行する必要があることです。

4

1 に答える 1

3

コードを次のような名前のメソッドに入れ、次のようRunFtp()にタイマーを使用します。

var t = new System.Threading.Timer(o => RunFtp(), null, 0, 30000);

または、Windows タスク スケジューラを使用して、アプリケーションを繰り返しスケジュールして実行します。

または、Sleep()このような方法を使用して...

while (true)
{
    RunFtp();
    System.Threading.Thread.Sleep(30000);
}

...コードは実行の合間に 30 秒間一時停止しますが、コードの実行時間も追加する必要があります。そのため、30 秒ごとに正確に実行を開始することはできません。

于 2013-05-05T20:15:56.813 に答える