From: mquinson Date: Wed, 11 Jul 2007 16:08:53 +0000 (+0000) Subject: When implementing the versatile threads, I decided to diverge a bit from the pthread... X-Git-Tag: v3.3~1622 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/456eb348c9521090931eba2c7fbfcacf40623fae When implementing the versatile threads, I decided to diverge a bit from the pthread interface git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3738 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/include/xbt/synchro.h b/include/xbt/synchro.h index 2855f544b6..84bdb79798 100644 --- a/include/xbt/synchro.h +++ b/include/xbt/synchro.h @@ -32,11 +32,16 @@ SG_BEGIN_DECL() /** \brief Thread data type (opaque structure) */ typedef struct s_xbt_thread_ *xbt_thread_t; - XBT_PUBLIC(xbt_thread_t) xbt_thread_create(pvoid_f_pvoid_t start_routine,void* param); - XBT_PUBLIC(void) xbt_thread_exit(int *retcode); + XBT_PUBLIC(xbt_thread_t) xbt_thread_create(void_f_pvoid_t start_routine,void* param); + XBT_PUBLIC(void) xbt_thread_exit(); XBT_PUBLIC(xbt_thread_t) xbt_thread_self(void); /* xbt_thread_join frees the joined thread (ie the XBT wrapper around it, the OS frees the rest) */ - XBT_PUBLIC(void) xbt_thread_join(xbt_thread_t thread,void ** thread_return); + XBT_PUBLIC(void) xbt_thread_join(xbt_thread_t thread); + /* Brutally ends the life of the poor victim */ + XBT_PUBLIC(void) xbt_thread_destroy(xbt_thread_t thread); + /* suicide */ + XBT_PUBLIC(void) xbt_thread_exit(void); + /* current thread pass control to any possible thread wanting it */ XBT_PUBLIC(void) xbt_thread_yield(void);