PDA

View Full Version : سوال: مشکل با Timer



odise2004
سه شنبه 19 بهمن 1389, 15:37 عصر
سلام.فرض کنید من این تیکه کد رو به عنوان مثال دارم :




public int i = 0;
private void button1_Click(object sender, EventArgs e)
{

timer1.Enabled = true;
int j = 0;
for (int i = 0; i < 1000; i++)
{
j++;
}
TextBox1.Text = i.ToString();
}


private void timer1_Tick(object sender, EventArgs e)
{
i++;
}


من میخوام مدت زمان اجرای حلقه رو داشته باشم.اما تایمر بعد از اتمام حلقه شروع به کار میکنه!
ممنون میشم کمک کنین.تشکر.

mehdi.mousavi
سه شنبه 19 بهمن 1389, 15:52 عصر
سلام.
اگر هدفتون از این کار بهینه نمودن بخشی از کد هستش، بهتره از Profiler های موجود برای سنجش این زمان بندی استفاده کنید.
در غیر اینصورت، میتونید با استفاده از Stopwatch مدت زمان سپری شده رو (بر حسب میلی ثانیه) بدست بیارید:


System.Diagnostics.Stopwatch stopWatch = new System.Diagnostics.Stopwatch();
stopWatch.Start();

for (int i = 0; i < int.MaxValue; i++) ;

stopWatch.Stop();
long elapsed = stopWatch.ElapsedMilliseconds;

موفق باشید.