プロジェクト

全般

プロフィール

バグ #4191

SliderComp.py 実行時にエラー状態になる

takahashi が6年以上前に追加. 6年以上前に更新.

ステータス:
解決
優先度:
通常
担当者:
takahashi
対象バージョン:
開始日:
2017/09/09
期日:
2017/09/15
進捗率:

100%

予定工数:

説明

大阪電通大の升谷です.いつもお世話になります.

OpenRTM-aist-1.1.2に付属のtkinterを使ったコンポーネントをWindowsで試し
ているのですが,動作が不安定です.何か注意すべきことはありますか?

再現条件がはっきりしないのですが,起動してすぐにPythonが異常終了するこ
ともあり,動作中にコンポーネントがエラー状態になることもあります.正常
に動作している場合もありますが,数回に1度ぐらいの頻度で問題が発生しま
す.

試しているのは,

C:\ProgramFiles\OpenRTM-aist\1.1.2\Components\Python\Examples\Slider_and_Motor

にあるSliderComp.pyやTkMotorPosComp.pyです.最初は,これを基にして独自
のコンポーネントを作ろうとしていたのですが,上述の問題が起こるので,オ
リジナルを試していたところ,オリジナルでも同じ問題が起こっています.

関係しているリビジョン

リビジョン 866 (差分)
takahashi が6年以上前に追加

[compat,bugfix,->RELENG_1_2] To avoid access conflicts, access via variable object. refs #4191

リビジョン 867 (差分)
takahashi が6年以上前に追加

[compat,bugfix,->RELENG_1_2] To avoid access conflicts, access via variable object. refs #4191

リビジョン 868 (差分)
takahashi が6年以上前に追加

[compat,bugfix,->RELENG_1_2] To avoid access conflicts, access via variable object. refs #4191

リビジョン 869 (差分)
takahashi が6年以上前に追加

[compat,bugfix,->RELENG_1_2] To avoid access conflicts, access via variable object. refs #4191

履歴

#1 takahashi が6年以上前に更新

  • ステータス新規 から 解決 に変更
  • 対象バージョンRELEASE_1_2_0 から RELENG_1_2 に変更
  • 進捗率0 から 100 に変更

Scale オブジェクトに対するアクセス競合が起きていた.
Scale.get() はスレッドセーフでは無いが,RTC のコンテキストと Tk GUI のコンテキストの双方からアクセスしていたため,
タイミングが重なると例外やエラーが発生していた.

Scale オブジェクトに設定した Variable オブジェクト越しに値を get することで解決した.
(Tk のサンプルとしてもこちらが正しいお作法)

他の形式にエクスポート: Atom PDF