commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r6781 - gnuradio/branches/developers/jcorgan/t196/gnur


From: jcorgan
Subject: [Commit-gnuradio] r6781 - gnuradio/branches/developers/jcorgan/t196/gnuradio-core/src/lib/runtime
Date: Thu, 1 Nov 2007 20:59:51 -0600 (MDT)

Author: jcorgan
Date: 2007-11-01 20:59:47 -0600 (Thu, 01 Nov 2007)
New Revision: 6781

Modified:
   
gnuradio/branches/developers/jcorgan/t196/gnuradio-core/src/lib/runtime/gr_top_block.i
Log:
Fixes ticket:196.

Modified: 
gnuradio/branches/developers/jcorgan/t196/gnuradio-core/src/lib/runtime/gr_top_block.i
===================================================================
--- 
gnuradio/branches/developers/jcorgan/t196/gnuradio-core/src/lib/runtime/gr_top_block.i
      2007-11-02 02:25:51 UTC (rev 6780)
+++ 
gnuradio/branches/developers/jcorgan/t196/gnuradio-core/src/lib/runtime/gr_top_block.i
      2007-11-02 02:59:47 UTC (rev 6781)
@@ -49,25 +49,18 @@
   bool is_running();
 };
 
-%{
-class ensure_py_gil_state2 {
-    PyGILState_STATE   d_gstate;
-public:
-  ensure_py_gil_state2()  { d_gstate = PyGILState_Ensure(); }
-  ~ensure_py_gil_state2() { PyGILState_Release(d_gstate); }
-};
-%}
-
 %inline %{
 void top_block_run_unlocked(gr_top_block_sptr r) throw (std::runtime_error) 
 {
-    ensure_py_gil_state2 _lock;
+    Py_BEGIN_ALLOW_THREADS;            // release global interpreter lock
     r->run();
+    Py_END_ALLOW_THREADS;              // acquire global interpreter lock
 }
 
 void top_block_wait_unlocked(gr_top_block_sptr r) throw (std::runtime_error) 
 {
-    ensure_py_gil_state2 _lock;
+    Py_BEGIN_ALLOW_THREADS;            // release global interpreter lock
     r->wait();
+    Py_END_ALLOW_THREADS;              // acquire global interpreter lock
 }
 %}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]