"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > مقدمة لمشروع المنوال

مقدمة لمشروع المنوال

تم النشر بتاريخ 2024-07-30
تصفح:296

Introduction to Project Loom

يعد Project Loom جهدًا مستمرًا من قبل مجتمع OpenJDK لتقديم خيوط خفيفة الوزن وفعالة، تُعرف باسم الألياف، واستمراريات لمنصة Java. تهدف هذه الميزات الجديدة إلى تبسيط البرمجة المتزامنة وتحسين قابلية التوسع لتطبيقات Java.

ما هو مشروع المنوال؟

يهدف Project Loom إلى تحسين نموذج التزامن في Java من خلال تقديم الألياف، وهي خيوط خفيفة الوزن تتم إدارتها بواسطة JVM. على عكس الخيوط التقليدية، تتمتع الألياف بحمل أقل بكثير، مما يجعل من الممكن إنشاء وإدارة الملايين منها في وقت واحد. يقدم هذا المشروع أيضًا الاستمرارات، والتي تسمح بتعليق واستئناف العمليات الحسابية عند نقاط محددة.

لماذا مشروع لوم؟

  1. قابلية التوسع: الخيوط التقليدية باهظة الثمن من حيث الذاكرة ووحدة المعالجة المركزية، مما يحد من قابلية التوسع لتطبيقات Java. تتميز الألياف بخفة الوزن، مما يتيح للتطبيقات التوسع في ملايين المهام المتزامنة.
  2. التزامن المبسط: يهدف Project Loom إلى تبسيط تطوير التطبيقات المتزامنة من خلال توفير نموذج أكثر وضوحًا ومرونة.
  3. تحسين الأداء: من خلال تقليل الحمل المرتبط بالخيوط التقليدية، يمكن للألياف تحسين أداء التطبيقات المتزامنة للغاية.

استخدام الألياف في مشروع المنوال

إليك مثال لكيفية استخدام الألياف في تطبيق Java:

import java.util.concurrent.Executors;
import java.util.concurrent.ExecutorService;

public class LoomExample {
    public static void main(String[] args) {
        ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor();

        for (int i = 0; i  {
                System.out.println("Hello from fiber "   Thread.currentThread().getName());
            });
        }

        executor.shutdown();
    }
}

في هذا المثال، قمنا بإنشاء منفذ يستخدم الخيوط الافتراضية (الألياف). ثم نرسل مليون مهمة إلى هذا المنفذ. تقوم كل مهمة بطباعة رسالة مع اسم سلسلة الرسائل الحالية.

استخدام الاستمرارات في المشروع المنوال

تسمح لك الاستمرارات بإيقاف العمليات الحسابية مؤقتًا واستئنافها. إليك مثال أساسي:

import jdk.incubator.concurrent.Continuation;
import jdk.incubator.concurrent.ContinuationScope;

public class ContinuationExample {
    public static void main(String[] args) {
        ContinuationScope scope = new ContinuationScope("example");

        Continuation continuation = new Continuation(scope, () -> {
            System.out.println("Part 1");
            Continuation.yield(scope);
            System.out.println("Part 2");
        });

        while (!continuation.isDone()) {
            continuation.run();
        }
    }
}

في هذا المثال، يطبع الاستمرار "الجزء 1"، ويعيد التحكم إلى الموضوع الرئيسي، ثم يستأنف طباعة "الجزء 2".

فوائد مشروع المنوال

  1. كفاءة الموارد: تستخدم الألياف ذاكرة أقل بكثير وموارد وحدة المعالجة المركزية مقارنة بالخيوط التقليدية.
  2. تزامن أسهل: يبسط كتابة وفهم التعليمات البرمجية المتزامنة.
  3. الأداء المحسن: يسمح للتطبيقات بمعالجة المزيد من المهام المتزامنة بكفاءة.

خاتمة

تم إعداد Project Loom لإحداث ثورة في الطريقة التي نتعامل بها مع التزامن في Java. من خلال تقديم ألياف خفيفة الوزن واستمراريات، فإنه يوفر نموذجًا أكثر قابلية للتطوير وكفاءة للبرمجة المتزامنة. يمكن للمطورين أن يتطلعوا إلى كتابة تطبيقات متزامنة أبسط وأكثر أداءً باستخدام هذه الميزات الجديدة.

بيان الافراج تم نشر هذه المقالة على: https://dev.to/adaumircosta/introduction-to-project-loom-2m98?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3