PDA

View Full Version : تابع ایجاد thread من چشه؟ خواهش میکنم کمک کنید



root88
پنج شنبه 09 دی 1389, 20:13 عصر
با سلام، من با تردها مشکل دارم لطفا کمک کنید. من یه لیست از عناصر دارم که می خوام الگوریتم دایکسترا رو برای برای تک تک این عناصر اجرا کنم برای همین یه کلاس برای اینکار نوشتم که تو سازنده اش مقداردهی اولیه صورت میگیره و بعد یه تابع الگوریتم دیکسترا رو پیاده میکنه. مشکل زمانی هست که می خوام تردها رو ایجاد کنم. تو تابع Thread یه شی از این کلاس شاخته میشه و به متغیر b از این کلاش مقداری که در لیست دارم داده میششه و بعد تابعی که الگوریتم رو پیاده یمکنه اجرا میشه. اما همین که خط اول از تابع رو می خونه خطوط بعدی رو اجرا نمیکنه و دوباره بر میگرده سر خط اول.



for(itt=MIS.begin();itt!=MIS.end();itt++)
{
_beginthread(Thread,0,NULL);
}





void Thread(void *nothing)
{
ShorthestPath sp;
cout<"yes";
sp.b=*itt;
sp.shorthestpaths();


}