PDA

View Full Version : سوال: آرایه ای از ترد ها



djsaeedkhan
پنج شنبه 29 دی 1390, 09:25 صبح
با سلام
خدمت دوستان
من می خوام یه آرایه از ترد ها درست کنم و به هر کدوم یه کاری رو بسپرم که انجام بده و بعد ازش استفاده کنم.
ما همیشه یه ترد یا دو تا یا ... می سازیم و ازش استفاده می کنیم. اینجا می خوام یه آرایه باشه که مستقیم اندیس بدم و ازش استفاده کنم
اگر لطف بفرمایید و راهنمایی کنید تشکر می کنم.

debugger
پنج شنبه 29 دی 1390, 10:21 صبح
سلام دوست عزیز

Thread[] array = new Thread[4];
for (int i = 0; i < array.Length; i++)
{
// Start the thread with a ThreadStart.
array[i] = new Thread(new ThreadStart(Start));
array[i].Start();
}
// Join all the threads.
for (int i = 0; i < array.Length; i++)
{
array[i].Join();
}

djsaeedkhan
پنج شنبه 29 دی 1390, 10:45 صبح
با سلام و تشکر
من می خوام یه آرایه از ترد ها تعریف کنم و به هر کدوم یه وظیفه بدم (مثلا همه یه فیلد از دیتابیس رو چک کنند) و هر وقت گفتم مثلا موجودی حساب چقدر است یکیشون برام این نتیجه رو برگردونه.
یا گفتم انقدر به حساب واریز بشه وقتی یکی وارد شد برای درج، بقیه بلوک بشن و فقط اون کار کنه.

اگر لطف بفرمایید چیزی شبیه این بفرمایید تشکر می کنم. من فقط مفاهیم رو می خوام. دقیقا همین رو نمی خواهم
با تشکر

debugger
پنج شنبه 29 دی 1390, 11:23 صبح
برای هر یک از کارت یک تابع تعریف کن

در خط


array[i] = new Thread(new ThreadStart(Start));

array[i].Start();



بجای start ای که داخل پارانتز هست نام تابع خودتو بنویس

فرض کن 10 تا ترد تعریف کردی وقتی ترد 1 کار تابع y را می کنه با یک حلقه از ترد 2 تا 10 را stop کن .

اگر ترد 5 کار تابع مثلا x را شروع کرد با یک حلقه ی for ترد 1 تا 10 بجز 5 را stop کن