Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
name the threads
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 6 Aug 2007 18:28:30 +0000 (18:28 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 6 Aug 2007 18:28:30 +0000 (18:28 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4000 48e7efb5-ca39-0410-a469-dd3cf9ba447f

examples/gras/synchro/philosopher.c
src/include/xbt/xbt_os_thread.h

index 8624696..5095a5e 100644 (file)
@@ -120,8 +120,11 @@ int philosopher (int argc,char *argv[]) {
   
   INFO0("Enough waiting, spawn the threads");
   /* spawn threads */
-  for (i=0; i<philosopher_amount; i++)
-     philosophers[i] = xbt_thread_create(philo_thread,&id[i]);
+  for (i=0; i<philosopher_amount; i++) {
+     char *name = bprintf("thread %d",i);
+     philosophers[i] = xbt_thread_create(name,philo_thread,&id[i]);
+     free(name);
+  }
   
   /* wait for them */
   xbt_mutex_lock(mut_end);
index 3f9122b..b3860d5 100644 (file)
@@ -28,7 +28,7 @@ SG_BEGIN_DECL()
   /** \brief Thread data type (opaque structure) */
   typedef struct xbt_os_thread_       *xbt_os_thread_t;
 
-  XBT_PUBLIC(xbt_os_thread_t) xbt_os_thread_create(pvoid_f_pvoid_t start_routine,void* param);
+  XBT_PUBLIC(xbt_os_thread_t) xbt_os_thread_create(const char *name,pvoid_f_pvoid_t start_routine,void* param);
   XBT_PUBLIC(void) xbt_os_thread_exit(int *retcode);
   XBT_PUBLIC(xbt_os_thread_t) xbt_os_thread_self(void);
   /* xbt_os_thread_join frees the joined thread (ie the XBT wrapper around it, the OS frees the rest) */