PDA

View Full Version : سوال: انجام چند عمل همزمان در فرم



superhacker2009
پنج شنبه 06 خرداد 1389, 20:52 عصر
در پروژه ای که در حال انجام اونم 3 کارمختلف شامل،
1- دریافت اطلاعات از TextBox ها
2- تولید عبارات حاصل از اعداد ورودی( عملی زمان گیر(Brute Force))
3- ذخیره آن در فایل متنی
باید هم زمان رخ بده و من از BackgroundWorker استفاده کردم که درصد انجام کارو بهم بده
عمل زمان گیر رو که شامل حلقه های تکرار پیچیده بود رو در Event DoWork قرار دادم همچی درست کار میکنه ولی وقتی قراره اطلاعات رو در RichTextbox نشون بده با خطا روبرو میشه و بهم دسترسی به Object روی فرم رو نمیده آیا باید از Thread استفاده کنم اگر ممکنه با یک مثال ساده منو در این زمینه راهنمایی کنید متشکرم .

saber187518
جمعه 07 خرداد 1389, 02:01 صبح
با سلام
اولین کاری که باید بکنی


using System.Threading;

بعد نوبت به تعریف میرسه. که public هستن.


Thread t1, t2;


حالا این خط رو مینویسی


public Form1()
{
InitializeComponent();
t1 = new Thread(new ThreadStart(p1));
}

حالا باید داخل برنامه هرجا که خواستی دستور شروع اجرای thread رو صادر کنی


t1.Start();

و یه جایی هم تابع p1 رو که thread اون رو اجرا میکنه رو مینویسی.:لبخند:
موفق باشی.