PDA

View Full Version : محاسبه پیشرفت بایت های ارسال/دریافت شده



mmbguide
پنج شنبه 15 شهریور 1397, 12:17 عصر
سلام

من برای ذخیرهسازی فایل ها در شبکه از FileStream در SQL Server استفاده میکنم و فایل بصورت یک متغیر از نوع Byte[] و به عنوان یکی از پارامترهای دستور SQL به StoredProcedure ارسال میشه، برای نمایش درصد Progress فایل در سیستم Local و یا یک پوشه Shared شده بران امکان محاسبه و نمایش Progress وجود داره ولی در زمان ارسال این بایت ها به Server و از طریق FileStream چیزی به ذهنم نمیرسه. ممنون میشم اگر کمک برسونید

ShayanFiroozi
یک شنبه 18 شهریور 1397, 09:18 صبح
سلام دوست عزیز،

از اونجائی که دسترسی به یک سرور به خیلی چیزا بستگی داره مثل پهنای باند ، در دسترس بودن سرور ، زیر بار بودن سرور و غیره ، بنا براین شما نمیتونین مثل یک مقصد Local باهاش رفتار کنین.
از نظر بنده بهترین گزینه استفاده از async/await هستش ، نمونه های زیادی وجود داره که میتونین سرچ کنین.

نکات مهم :

1-حتما از برنامه نویسی چند نخی یا multi threading استفاده کنین : روش هایی مثل Task,Thread ، اینا رو دستی پیاده کنین و از کامپوننت Background Worker استفاده نکنین.
2-فراموش نکنین یه زمان مشخصی رو برای timeout دستوراتتون در نظر بگیرین ، مثلا اگر سرور تا 20 ثانیه پاسخ نداد عملیات کنسل بشه.

موفق باشید.:لبخندساده: