A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
versatile implementation do not fake the xbt_thread type anymore but has its own...
[simgrid.git]
/
src
/
xbt
/
xbt_os_thread.c
diff --git
a/src/xbt/xbt_os_thread.c
b/src/xbt/xbt_os_thread.c
index
81c86e9
..
b023fe8
100644
(file)
--- a/
src/xbt/xbt_os_thread.c
+++ b/
src/xbt/xbt_os_thread.c
@@
-24,7
+24,6
@@
#include <pthread.h>
typedef struct xbt_os_thread_ {
#include <pthread.h>
typedef struct xbt_os_thread_ {
- /* KEEP IT IN SYNC WITH xbt_thread.c */
pthread_t t;
void *param;
pvoid_f_pvoid_t *start_routine;
pthread_t t;
void *param;
pvoid_f_pvoid_t *start_routine;
@@
-208,12
+207,16
@@
void xbt_os_cond_destroy(xbt_os_cond_t cond){
free(cond);
}
free(cond);
}
+void *xbt_os_thread_getparam(void) {
+ xbt_os_thread_t t = xbt_os_thread_self();
+ return t->param;
+}
+
/* ********************************* WINDOWS IMPLEMENTATION ************************************ */
#elif defined(WIN32)
typedef struct xbt_os_thread_ {
/* ********************************* WINDOWS IMPLEMENTATION ************************************ */
#elif defined(WIN32)
typedef struct xbt_os_thread_ {
- /* KEEP IT IN SYNC WITH xbt_thread */
HANDLE handle; /* the win thread handle */
unsigned long id; /* the win thread id */
pvoid_f_pvoid_t *start_routine;
HANDLE handle; /* the win thread handle */
unsigned long id; /* the win thread id */
pvoid_f_pvoid_t *start_routine;
@@
-289,6
+292,12
@@
xbt_os_thread_t xbt_os_thread_self(void) {
return TlsGetValue(xbt_self_thread_key);
}
return TlsGetValue(xbt_self_thread_key);
}
+void *xbt_os_thread_getparam(void) {
+ xbt_os_thread_t t = xbt_os_thread_self();
+ return t->param;
+}
+
+
void xbt_os_thread_yield(void) {
Sleep(0);
}
void xbt_os_thread_yield(void) {
Sleep(0);
}