[openrtm-commit:00775] r536 - branches/work/OpenRTM-aist-Python/OpenRTM_aist

openrtm @ openrtm.org openrtm @ openrtm.org
2012年 3月 14日 (水) 16:41:49 JST


Author: kurihara
Date: 2012-03-14 16:41:48 +0900 (Wed, 14 Mar 2012)
New Revision: 536

Modified:
   branches/work/OpenRTM-aist-Python/OpenRTM_aist/PeriodicExecutionContext.py
Log:
The bug about PeriodicExecutionContextInit has been fixed. refs #2388

Modified: branches/work/OpenRTM-aist-Python/OpenRTM_aist/PeriodicExecutionContext.py
===================================================================
--- branches/work/OpenRTM-aist-Python/OpenRTM_aist/PeriodicExecutionContext.py	2012-03-13 10:08:06 UTC (rev 535)
+++ branches/work/OpenRTM-aist-Python/OpenRTM_aist/PeriodicExecutionContext.py	2012-03-14 07:41:48 UTC (rev 536)
@@ -576,7 +576,9 @@
     else:
       guard = OpenRTM_aist.ScopedLock(self._workerthread._mutex)
       self._workerthread._running = True
+      self._workerthread._cond.acquire()
       self._workerthread._cond.notify()
+      self._workerthread._cond.release()
       del guard
     return RTC.RTC_OK
 
@@ -601,7 +603,9 @@
     guard = OpenRTM_aist.ScopedLock(self._workerthread._mutex)
     if self._workerthread._running == False:
       self._workerthread._running = True
+      self._workerthread._cond.acquire()
       self._workerthread._cond.notify()
+      self._workerthread._cond.release()
     del guard
     return RTC.RTC_OK
 
@@ -623,7 +627,9 @@
     guard = OpenRTM_aist.ScopedLock(self._workerthread._mutex)
     if self._workerthread._running == False:
       self._workerthread._running = True
+      self._workerthread._cond.acquire()
       self._workerthread._cond.notify()
+      self._workerthread._cond.release()
     del guard
     return RTC.RTC_OK
 
@@ -741,6 +747,7 @@
 #
 # @endif
 def PeriodicExecutionContextInit(manager):
-  manager.registerECFactory("PeriodicExecutionContext",
-                            OpenRTM_aist.PeriodicExecutionContext,
-                            OpenRTM_aist.ECDelete)
+  OpenRTM_aist.ExecutionContextFactory.instance().addFactory("PeriodicExecutionContext",
+                                                             OpenRTM_aist.PeriodicExecutionContext,
+                                                             OpenRTM_aist.ECDelete)
+  return



openrtm-commit メーリングリストの案内