【发布时间】:2011-09-27 10:23:54
【问题描述】:
我还没有找到解决方案...希望有人可以帮助我。
我有一个后台工作程序,它一直运行直到被用户取消(它从套接字读取数据并将其写入文件)。
现在我想在一段时间后拆分输出文件,例如每 2 分钟创建一个新文件。
为此,我想使用一个计时器,例如
private void bckWrkSocket_DoWork(object sender, DoWorkEventArgs e)
{
//create timer and set its interval to e.Argument
//start timer
while(true)
{
if(timer.finished == true)
{
//close old file and create new
//restart timer
}
...
}
}
有什么建议/想法吗?
编辑:秒表成功了。这是我的解决方案 这是我的解决方案:
private void bckWrkSocket_DoWork(object sender, DoWorkEventArgs e)
{
long targettime = (long) e.Argument;
Stopwatch watch = new Stopwatch();
if (targettime > 0)
watch.Start();
while(true)
{
if ((targettime > 0) && (watch.ElapsedMilliseconds >= targettime))
{
...
watch.Reset();
watch.Start();
}
}
【问题讨论】:
标签: c# timer backgroundworker