X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/46930d8f1568c61dcd2ab37f6a2924dc79596ffc..c8c13c2248f0124bc4c3d1625cab2bdb0be6c8da:/fakethr.h?ds=sidebyside diff --git a/fakethr.h b/fakethr.h index e09a757..8f0def4 100644 --- a/fakethr.h +++ b/fakethr.h @@ -1,12 +1,21 @@ +/* fakethr.h + * + * Copyright (C) 1999, by Larry Wall and others + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + */ + typedef int perl_mutex; typedef int perl_key; -typedef struct thread *perl_thread; +typedef struct perl_thread *perl_os_thread; /* With fake threads, thr is global(ish) so we don't need dTHR */ #define dTHR extern int errno struct perl_wait_queue { - struct thread * thread; + struct perl_thread * thread; struct perl_wait_queue * next; }; typedef struct perl_wait_queue *perl_cond; @@ -14,7 +23,7 @@ typedef struct perl_wait_queue *perl_cond; /* Ask thread.h to include our per-thread extras */ #define HAVE_THREAD_INTERN struct thread_intern { - perl_thread next_run, prev_run; /* Linked list of runnable threads */ + perl_os_thread next_run, prev_run; /* Linked list of runnable threads */ perl_cond wait_queue; /* Wait queue that we are waiting on */ IV private; /* Holds data across time slices */ I32 savemark; /* Holds MARK for thread join values */ @@ -34,7 +43,7 @@ struct thread_intern { * something a bit different for XS code. */ -#define SCHEDULE() return schedule(), op +#define SCHEDULE() return schedule(), PL_op #define MUTEX_LOCK(m) #define MUTEX_UNLOCK(m)