Güvenli ve tembel yöntem çağrıları bazı donanımları yönetmek için PySide kullanıyorum ve arabirimde (örneğin) düğme tıklamalarına bağlı olarak göreceli olarak basit işlemler gerçekleştiriyorum. Bu donanım parçalarının her birini çalıştırma kodu başka bir iş parçacığında bulunur. kolaylık sağlamak için, bir jenerik invoke_method
sinyali ekledik O donanım sürücüleri, her böyle bir UI bileşeni Açıkçası bu doğrudan bu diğer iplik sinyal niteliği erişenPySide/PyQt
my_driver.invoke_method.emit('method_name', [arg, ...], {kwarg, ...})
kullanabileceği .... ama ben Bu bir GIL dünyasında mutlaka tamam olup olmadığından emin değilim. Eğer bu gerçekten de tembel bir çözümse - sürücüdeki başka bir sinyale bağlı UI'de operasyona özgü bir sinyale sahip olmaksızın keyfi ipliklerde keyfi metotları çağırmak için başka büyük alternatifler var mıdır?
yerine bir donanımın farklı parça erişilen UI kodunun her bit sinyal kullanarak düşünebiliriz - do_invocation_driver_1
ve do_invocation_driver_2
gibi bir karşılık gelen sürücünün invoke_method
sinyali için bu bağlayın.