وتسمح البرمجة المتعددة الاختصاصات في كل من جيم وجيم ++ بتطبيقات متعددة في آن واحد، وتحسين الأداء والاستجابة، غير أن تصميم نظم فعالة متعددة الاختصاصات يتطلب الالتزام بمبادئ محددة لتجنب مسائل مثل ظروف العرق، والحواجز، وعدم الاتساق في البيانات، وتجمل هذه المادة مبادئ التصميم الرئيسية التي تدعمها أمثلة في العالم الحقيقي.

1 - تقليل البيانات المشتركة إلى الحد الأدنى

ويقلل تخفيض البيانات المشتركة بين الخيوط من احتمال حدوث مشاكل في التواؤم، وعندما تعمل الخيوط على بيانات مستقلة، تتناقص الحاجة إلى آليات القفل، مما يؤدي إلى تحسين الأداء ورمز أبسط، وعلى سبيل المثال، في خادم على شبكة الإنترنت يتعامل مع طلبات متعددة، يقوم كل خيط بعمليات طلب البيانات دون تقاسم الدولة المتمردة.

2 - استخدام التواؤم السليم

وعندما تكون البيانات المشتركة ضرورية، يكفل التواؤم السليم سلامة البيانات، وتشمل التقنيات المناظير والسلوكيات ومتغيرات الظروف، فعلى سبيل المثال، يستخدم نموذج المنتج - المستهلك متغيراً للثدي والشرط لتنسيق الوصول إلى عازلة مشتركة، ومنع الظروف العرقية، وضمان اتساق البيانات.

3 - تجنب المأزق

ويحدث قفل عند انتظار الخيوط إلى أجل غير مسمى للموارد التي يحتفظ بها بعضها البعض، ولمنع ذلك، يكتسبون أقفالهم في ترتيب ثابت ويقللون إلى أدنى حد من مدة القفل، ومن الأمثلة على ذلك نظام قاعدة البيانات الذي تكتسب فيه المعاملات أقفال متعددة؛ ويتجنب وضع أمر صارم بحيازة القفل ظروف الانتظار الدائرية.

4- تصميم القابلية للتسويق

وتتماشى التطبيقات المتعددة المستويات القابلة للتوسع بكفاءة مع ازدياد عدد الخيوط، واستخدام مجمعات الخيوط لإدارة الموارد وتجنب إحداث خيوط مفرطة، مثلا، يستخدم تطبيق الخادم مجموعة خيوط لمعالجة الاتصالات الواردة، مع الحفاظ على الأداء تحت حمولة عالية.

5 - استخدام العمليات الذرية عند الاقتضاء

وتوفر العمليات الذرية تحديثات السلامة على الخيوط للمتغيرات المشتركة دون قفل واضح، وهي مفيدة للمزيجات أو الأعلام، وعلى سبيل المثال، فإن زيادة مفاعل مشترك يستخدم المدفعية الذرية والأضرار تكفل التصحيح دون القفل على رؤوس الأموال.