PDA

View Full Version : Thread local storage



the_milad
پنج شنبه 24 مهر 1393, 22:39 عصر
سلام، کسی می تونه توضیح بده Thread local storage چی هست و چرا از اون استفاده میشه؟

C3phalex1n_0x
جمعه 25 مهر 1393, 12:52 عصر
سلام، در مورد TLS مطلب زیاد هست اما من به صورت خلاصه برات توضیح می دم. (البته تا جایی که من دانش دارم، اگر جایی رو بد مطرح کردم لطفا رفع کنید.)

توی سیستم عامل (در ویندوز مثلا) تمامی برنامه های کامپیوتری که شما با آنها سر و کار دارید، دارای چندین ترد یا حداقل یک ترد درون پروسه برنامه هستند. زیرا اگر ترد در برنامه وجود نداشته باشه، پردازنده قادر به اجرای برنامه شما نخواهد بود. این ترد ها فضای آدرس مجازی خودشان را درون برنامه به اشتراک می گذارند که به آن انباره ذخیره محلی ترد یا Thread Local Storage گویند. تا جایی که یادم هست، توی کتاب ویندوز اینترنال نسخه 5 و 6 این مطلب توضیح داده شده است.

اما خب چرا ما باید از TLS استفاده کنیم؟! همانطور که در بالا این مطلب رو ذکر کردم، تردها در برنامه به داده ها به صورت اشتراکی دسترسی دارند. اما شما می توانید با استفاده از قابلیت TLS در برنامه های چندتردی کاری کنید که هر ترد با استفاده از یک سری ایندکس به داده های بخصوصی فقط دسترسی داشته باشد.

این کلیات چیزی بود که من از TLS اطلاع داشتم. امیدوارم متوجه شده باشید.