From 86005c69d95a14bfcfa53de9ff93827e322a7669 Mon Sep 17 00:00:00 2001
From: Yichao Yu <yyc1992@gmail.com>
Date: Sun, 22 Jun 2014 06:13:20 +0800
Subject: [PATCH] somehow pypy + nvidia + beignet doesn't like releasing event
 in another thread.

---
 src/c_wrapper/event.cpp | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/c_wrapper/event.cpp b/src/c_wrapper/event.cpp
index bd1f14c8..add96393 100644
--- a/src/c_wrapper/event.cpp
+++ b/src/c_wrapper/event.cpp
@@ -87,6 +87,7 @@ event::release_private() noexcept
         }
     }
 #endif
+#if 0
     std::thread t([] (cl_event evt, event_private *p) {
             pyopencl_call_guarded_cleanup(clWaitForEvents, len_arg(evt));
             p->call_finish();
@@ -95,6 +96,11 @@ event::release_private() noexcept
         }, data(), m_p);
     t.detach();
     return false;
+#else
+    wait();
+    delete m_p;
+    return true;
+#endif
 }
 
 event::~event()
-- 
GitLab