السلام عليكم ورحمة الله وبركاته.

أعمل على معالجين منفصلين تمامًا في النظام، سيتواصلون فيما بينهم، أحاول البعد عن الحلول الخاصة بـUnix لأنه سيعمل أيضًا على ويندوز، وسيكون Windows Native لن أستخدم أي Hacks، الآن أمامي بعض الحلول، الترتيب بحسب الأصعب:

  1. Shared Memory: الحل الأصعب يوجد الكثير من الإختلافات بين Unix وويندوز، وأي خطأ بسيط سيؤدي إلى فشل المعالجين، لكني أرى أنه الأسرع ذاكرة واحدة لا داعي لكتابة نفس البيانات في ذاكرة كل برنامج، ولن أحتاج إلى عملية معالجة كبيرة لتفسير البيانات.

  2. stdin/stdout/stderr: عندما نتحدث عن تواصل بين معالجين سنجد أن هذا الحل هو الأكثر شيوعًا، والأفضل في تحكم أحد المعالجين في الأخر، لكن ماذا عن البطء فيه.

  3. TCP Socket: الحل الأكثر سلاسة وسهولة وعبورًا للمنصات، لكن يبدو أني سأضحي بالسرعة والذاكرة، على حساب استخدامه.

أي من الحلول ترى سيكون مناسبًا؟ وهل ترى حلًا أخر؟