View Full Version : آموزش: مفاهیم Thread
saeid.java
چهارشنبه 24 شهریور 1389, 10:08 صبح
سلام
میخواستم بدونم مفهوم thread توی برنامه نویسی چیه که این قدر بش بها میدن ؟آیا فقط موقعی موجودیت پیدا میکنه که یه برنامه چند قسمت بشه مثلا چند تا word باز کنیم ؟همین .خواهش میکنم جوری توضیح بدید که بفهمیم
ضمنا نبودش چه مشکلاتی رو برای یه برنامه به وجود میاره ؟
Multithread به چه معنی ؟
Danial_abdi
پنج شنبه 25 شهریور 1389, 00:03 صبح
Thread یعنی نخ و MultiThreading یعنی برنامه نویسی چند نخی. در یک برنامه معمولی دستورات به ترتیب از بالا به پایین اجرا می شوند یعنی اجرای برنامه به صورت خطی از ابتدا تا انتها است. ولی در Multi Threading می توان قسمتهایی از برنامه را به صورت همزمان (نیاز به توضیح دارد) اجرا کرد.
در Multi Threading قسمتی از یک Thread مثلا Th 0 اجرا می شود و سپس این Thread به حالت Wait یا Sleep می رود و Thread بعدی به حالت Running می رود و دستورات آن اجرا می شود. این سیکلها ادامه میابند تا اینکه Thread پایان پذیرد.
توضیح همزمان بودن اجرا : همانطور که حتما میدانید در پردازنده های تک هسته ایی در یک لحظه فقط یک دستور اجرا می شود. در واقع Thread ها هم پشت سر هم اجرا می شوند (یعنی باز هم به صورت خطی است). ولی چون سرعت تغییر حالت ها زیاد است به نظر میاید که با هم در حال اجرا هستند.
ولی در پردازنده های چند هسته ایی واقعا به صورت همزمان اجرا می شوند.
این توضیحات من خیلی خلاصه و سربسته بود . اگر مایل بودی این کتاب (http://www.programix.com/threadbook/)را بخوان ، این کتاب خیلی عالی است .
manvaputra
پنج شنبه 25 شهریور 1389, 08:04 صبح
دوست عزیز آموزش کامل ترد در جاوا توی همین تالار گذاشته شده.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.