سؤال

أحاول استخدام عميل XMLRPC من العديد من cheads.للتأكد من أن مؤشر ترابط واحد فقط يستخدم عميل XMLRPC الذي أنشأته قفل مع QMutex.الرمز الخاص بي:

giveacodicetagpre.

لكنه لا يعمل ولست متأكدا من السبب.هنا هو الإخراج:

giveacodicetagpre.

عند استخدام مؤشر ترابط واحد فقط يعمل بشكل جيد:

giveacodicetagpre.

عند استخدام مثيلتين مختلفتين من MM يعمل أيضا بشكل جيد:

giveacodicetagpre.

هل كانت مفيدة؟

المحلول

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

قمت أيضا بإزالة الغزل الخاص بك أثناء الحلقة وبدلا من ذلك بدأت حلقة حدث PYQT. كما يمكنك حقا تمرير مثيل MM الخاص بك إلى فئة الطلب الخاصة بك (وليس الأمر أكثر أهمية لهذا المثال لأنك كنت تستخدم نفس المثيل).

على أي حال، هنا هو إصداري الذي يبدو أنه يعمل:

giveacodicetagpre.

تحديث

بعد النظر إلى هذا أكثر قليلا، أدركت أن الخطأ في Python 2.7 و XMLRPC، حيث قاموا بتغيير كيفية إنشاء اتصالات. http://bugs.python.org/issue6907

الغريب، لا يتعطل هذا الرمز بالنسبة لي في Python 2.6 / 2.7 على OSX، أو على Python 2.6 تحت Linux. لكنها تحطم لي مع بيثون 2.7 تحت لينكس.

عندما نقلت آلية القفل خارج مثيل MM، يبدو أن تبدأ العمل بمقدار 2.7 على نظام Linux:

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top