PDA

View Full Version : Multi Threading



m_amin_t
یک شنبه 15 مهر 1386, 15:44 عصر
سلام
من داخل برنامه ام چندین Thread وجود داره که برای چندتا از اونها در فواصل زمانی مختلف تابع Sleep فراخوانی میشه. حالا هنگامی که در یه جایی از برنامه ام میخوام با یک فرمان، همه (یا چندتا از) Threadهای برنامه ام رو در هرجا که باشن متوقف کنم و به طور کلی کنسل کنم، همین sleepها کار دستم میده و هنگامی که thread رو مثلا Abort میکنم، هنگامی که مهلت sleep همون thread تموم میشه، برنامه دچار مشکل میشه و exception رخ میده.
اگه میتونید کمکم کنید.
ممنون

PC2st
یک شنبه 15 مهر 1386, 17:09 عصر
چه exception ای میده و همچنین در حالت عادی استفاده از Sleep مشکل ساز نیست.
بهتره اگر تونستید، کد برنامه رو بصورت خیلی خیلی مختصر (در حد 10 خط) قرار بدید.

mohammad272005
دوشنبه 16 مهر 1386, 00:06 صبح
منم با این مشکل برخورد کردم. میگه: Thear was being aborted یا یه همچین چیزی.

PC2st
دوشنبه 16 مهر 1386, 19:46 عصر
اصولا وقتی از متد Abort استفاده میکنید، یک خطای ThreadAbortException منتشر میشه و متن این ارور هم Thread was being aborted هست. این ارور در داخل همان Thread رخ میده و نه خارج از آن. و وقتی از Try/Catch/Finally درون همان Thread استفاده کنید، متوجه این ارور خواهید شد در غیر اینصورت خیر.

ARA
سه شنبه 17 مهر 1386, 10:33 صبح
قبلا مباحثی در مورد abort کردن thread و نحوه استفاده از اون بیان شده یک سرچی بکن
واسه اسن خطا هم فکر کنم باید از

myThread.Join();
استفاده کنی