یک برنامهٔ C# بنویسید که زمان شروع و پایان اجرای یک بلوک کد را با نمایش مقدار DateTime.Millisecond چاپ کند و مدت زمان اجرای آن را بر حسب میلیثانیه محاسبه و نمایش دهد.
9.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 03:02 0.0
برای حل این مسئله از DateTime.Now یا DateTime.UtcNow استفاده کنید و مقدار میلیثانیهٔ هر لحظه را با خصوصیت DateTime.Millisecond نمایش دهید؛ برای محاسبهٔ مدت زمان اجرای بلوک، دو DateTime را از هم کم کنید تا یک TimeSpan بگیرید و از TimeSpan.TotalMilliseconds برای مقدار دقیقِ کل میلیثانیهها استفاده کنید. نکته: DateTime.Millisecond فقط جزء میلیثانیهٔ زمان را (0–999) نشان میدهد، و برای اندازهگیری با دقت بالاتر میتوانید از System.Diagnostics.Stopwatch استفاده کنید؛ در وبلاگینگ یا اسکریپتهای خود میتوانید قالببندی زمان با ToString("yyyy-MM-dd HH:mm:ss.fff") را نیز به کار ببرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکتهٔ مهم این است که DateTime.Millisecond تنها بخش میلیثانیهٔ زمان را نشان میدهد (0–999) و برای اندازهگیری دقیقتر زمان از کل مقدار DateTime یا Stopwatch استفاده کنید. برای ثبت دقیق مدت زمان اجرای بلوک، استفاده از System.Diagnostics.Stopwatch با رزولوشن بالا توصیه میشود. در صورت نمایش تاریخ و زمان با فرمت کامل، میتوانید از ToString("yyyy-MM-dd HH:mm:ss.fff") استفاده کنید تا میلیثانیه هم نمایش داده شود و سپس با TimeSpan.TotalMilliseconds مقدار کل را بهدست آورید. همچنین در وبلاگها یا لاگهای سیستمی بهتر است از DateTime.UtcNow استفاده کنید تا با منطقهٔ زمانی و DST مشکلی نداشته باشید.
گزارش