PATH:
usr
/
lib64
/
perl5
/
CORE
/* 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 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 perl_thread * thread; struct perl_wait_queue * next; }; typedef struct perl_wait_queue *perl_cond; /* Ask thread.h to include our per-thread extras */ #define HAVE_THREAD_INTERN struct thread_intern { 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 */ }; #define init_thread_intern(t) \ STMT_START { \ t->self = (t); \ (t)->i.next_run = (t)->i.prev_run = (t); \ (t)->i.wait_queue = 0; \ (t)->i.private = 0; \ } STMT_END /* * Note that SCHEDULE() is only callable from pp code (which * must be expecting to be restarted). We'll have to do * something a bit different for XS code. */ #define SCHEDULE() return schedule(), PL_op #define MUTEX_LOCK(m) #define MUTEX_UNLOCK(m) #define MUTEX_INIT(m) #define MUTEX_DESTROY(m) #define COND_INIT(c) perl_cond_init(c) #define COND_SIGNAL(c) perl_cond_signal(c) #define COND_BROADCAST(c) perl_cond_broadcast(c) #define COND_WAIT(c, m) \ STMT_START { \ perl_cond_wait(c); \ SCHEDULE(); \ } STMT_END #define COND_DESTROY(c) #define THREAD_CREATE(t, f) f((t)) #define THREAD_POST_CREATE(t) NOOP #define YIELD NOOP /* * Local variables: * c-indentation-style: bsd * c-basic-offset: 4 * indent-tabs-mode: t * End: * * ex: set ts=8 sts=4 sw=4 noet: */
[-] regcharclass.h
[edit]
[-] sv.h
[edit]
[-] charclass_invlists.h
[edit]
[-] handy.h
[edit]
[-] pp_proto.h
[edit]
[-] opnames.h
[edit]
[-] iperlsys.h
[edit]
[-] uconfig.h
[edit]
[-] av.h
[edit]
[-] time64_config.h
[edit]
[-] config.h
[edit]
[+]
..
[-] perl.h
[edit]
[-] regcomp.h
[edit]
[-] opcode.h
[edit]
[-] warnings.h
[edit]
[-] perlapi.h
[edit]
[-] time64.h
[edit]
[-] utfebcdic.h
[edit]
[-] embedvar.h
[edit]
[-] embed.h
[edit]
[-] bitcount.h
[edit]
[-] git_version.h
[edit]
[-] thread.h
[edit]
[-] perliol.h
[edit]
[-] malloc_ctl.h
[edit]
[-] uudmap.h
[edit]
[-] op_reg_common.h
[edit]
[-] parser.h
[edit]
[-] EXTERN.h
[edit]
[-] fakesdio.h
[edit]
[-] pp.h
[edit]
[-] perldtrace.h
[edit]
[-] regexp.h
[edit]
[-] mg_data.h
[edit]
[-] reentr.h
[edit]
[-] intrpvar.h
[edit]
[-] cv.h
[edit]
[-] cop.h
[edit]
[-] perlio.h
[edit]
[-] dosish.h
[edit]
[-] patchlevel.h
[edit]
[-] feature.h
[edit]
[-] mg_vtable.h
[edit]
[-] XSUB.h
[edit]
[-] pad.h
[edit]
[-] scope.h
[edit]
[-] l1_char_class_tab.h
[edit]
[-] overload.h
[edit]
[-] unixish.h
[edit]
[-] perlsdio.h
[edit]
[-] regnodes.h
[edit]
[-] hv.h
[edit]
[-] gv.h
[edit]
[-] perlvars.h
[edit]
[-] utf8.h
[edit]
[-] mg.h
[edit]
[-] libperl.so
[edit]
[-] form.h
[edit]
[-] keywords.h
[edit]
[-] perlsfio.h
[edit]
[-] fakethr.h
[edit]
[-] perly.h
[edit]
[-] op.h
[edit]
[-] metaconfig.h
[edit]
[-] INTERN.h
[edit]
[-] mg_raw.h
[edit]
[-] mydtrace.h
[edit]
[-] util.h
[edit]
[-] nostdio.h
[edit]
[-] proto.h
[edit]