On 02.05.2012 13:44, Daniel P. Berrange wrote:
From: "Daniel P. Berrange" <berrange(a)redhat.com>
* src/util/threads-pthread.c, src/util/threads.h: Add virThreadCancel
---
src/util/threads-pthread.c | 5 +++++
src/util/threads.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/src/util/threads-pthread.c b/src/util/threads-pthread.c
index ea64887..cfd0b24 100644
--- a/src/util/threads-pthread.c
+++ b/src/util/threads-pthread.c
@@ -236,6 +236,11 @@ void virThreadJoin(virThreadPtr thread)
pthread_join(thread->thread, NULL);
}
+void virThreadCancel(virThreadPtr thread)
+{
+ pthread_cancel(thread->thread);
+}
+
int virThreadLocalInit(virThreadLocalPtr l,
virThreadLocalCleanup c)
{
diff --git a/src/util/threads.h b/src/util/threads.h
index e5000ea..9c1ef99 100644
--- a/src/util/threads.h
+++ b/src/util/threads.h
@@ -53,6 +53,7 @@ int virThreadCreate(virThreadPtr thread,
void virThreadSelf(virThreadPtr thread);
bool virThreadIsSelf(virThreadPtr thread);
void virThreadJoin(virThreadPtr thread);
+void virThreadCancel(virThreadPtr thread);
/* These next two functions are for debugging only, since they are not
* guaranteed to give unique values for distinct threads on all
Okay, if we are brave enough. Although, win32 implementation is missing.
Michal