متغیرهای محلی گستره راهی برای به اشتراک گذاشتن دادهها در داخل یک رشته و با رشتههای فرزند در جاوا فراهم میکنند و استدلال در مورد جریان داده را آسانتر میکنند.
بر اساس طرحی که اکنون در قلمرو OpenJDK در دست بررسی است، جاوا میتواند قابلیت به اشتراکگذاری دادههای تغییرناپذیر در سراسر رشتهها را به دست آورد.
یک پیشنهاد OpenJDK برای متغیرهای محلی-extent-local، که در حال حاضر یک API در حال رشد است، یک مدل برنامهنویسی برای داده ها را هم در یک رشته و هم با نخ های فرزند به اشتراک بگذارید. در این پیشنهاد آمده است که متغیرهای محلی گسترده به متغیرهای رشته محلی ترجیح داده می شوند، به ویژه در هنگام استفاده از تعداد زیادی رشته مجازی.
پیشنهاد چهار هدف پشت API در حال رشد را فهرست میکند:
- سهولت استفاده، برای ساده کردن استدلال در مورد جریان داده.
- قابلیت درک، برای قابل مشاهده کردن طول عمر داده های مشترک از ساختار نحوی کد.
- استحکام، برای اطمینان از اینکه دادههای به اشتراکگذاشتهشده توسط تماسگیرنده فقط توسط تماسگیرندگان قانونی قابل بازیابی است.
- عملکرد، برای در نظر گرفتن داده های به اشتراک گذاشته شده به عنوان غیرقابل تغییر برای امکان اشتراک گذاری توسط تعداد زیادی رشته و فعال کردن بهینه سازی زمان اجرا.
میزان API متغیرهای محلی در حال حاضر برای هیچ نسخه خاصی از جاوا استاندارد در نظر گرفته نشده است. اولین چیزی که به طور بالقوه ظاهر می شود در جاوا ۲۰ خواهد بود که در مارس ۲۰۲۳ ارائه می شود. جاوا ۱۹ یا کیت توسعه جاوا ۱۹، که قرار است در ۲۰ سپتامبر وارد شود، برای ویژگی های جدید بسته شده است.
طرح متغیرهای وسعت محلی شامل تغییر زبان برنامه نویسی جاوا نیست. همچنین هیچ قصدی برای نیاز به مهاجرت به دور از متغیرهای thread-local یا منسوخ کردن ThreadLocal API موجود وجود ندارد.
پست های مرتبط
Java API پیشنهادی به اشتراک گذاری داده های تغییرناپذیر در سراسر رشته ها را امکان پذیر می کند
Java API پیشنهادی به اشتراک گذاری داده های تغییرناپذیر در سراسر رشته ها را امکان پذیر می کند
Java API پیشنهادی به اشتراک گذاری داده های تغییرناپذیر در سراسر رشته ها را امکان پذیر می کند