diff options
author | H.Merijn Brand <h.m.brand@xs4all.nl> | 2002-10-19 14:10:21 +0000 |
---|---|---|
committer | H.Merijn Brand <h.m.brand@xs4all.nl> | 2002-10-19 14:10:21 +0000 |
commit | 3db8f154c4c6e098a5a0bdf7932e8f86fbd2c451 (patch) | |
tree | 304393fdb48236335e35a83047fba6223e13f602 /os2/os2ish.h | |
parent | efc41c8ef9279ab1e5f723c2c73a85333a96e0e2 (diff) | |
download | perl-3db8f154c4c6e098a5a0bdf7932e8f86fbd2c451.tar.gz |
Happy chainsaw stories; The removal of the 5005 threads
Still imcomplete. Configure will follow
p4raw-id: //depot/perl@18030
Diffstat (limited to 'os2/os2ish.h')
-rw-r--r-- | os2/os2ish.h | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/os2/os2ish.h b/os2/os2ish.h index 1b38b85427..20e413a837 100644 --- a/os2/os2ish.h +++ b/os2/os2ish.h @@ -99,115 +99,8 @@ # undef I_SYS_UN #endif -#ifdef USE_5005THREADS - -#define do_spawn(a) os2_do_spawn(aTHX_ (a)) -#define do_aspawn(a,b,c) os2_do_aspawn(aTHX_ (a),(b),(c)) - -#define OS2_ERROR_ALREADY_POSTED 299 /* Avoid os2.h */ - -extern int rc; - -#define MUTEX_INIT(m) \ - STMT_START { \ - int rc; \ - if ((rc = _rmutex_create(m,0))) \ - Perl_croak_nocontext("panic: MUTEX_INIT: rc=%i", rc); \ - } STMT_END -#define MUTEX_LOCK(m) \ - STMT_START { \ - int rc; \ - if ((rc = _rmutex_request(m,_FMR_IGNINT))) \ - Perl_croak_nocontext("panic: MUTEX_LOCK: rc=%i", rc); \ - } STMT_END -#define MUTEX_UNLOCK(m) \ - STMT_START { \ - int rc; \ - if ((rc = _rmutex_release(m))) \ - Perl_croak_nocontext("panic: MUTEX_UNLOCK: rc=%i", rc); \ - } STMT_END -#define MUTEX_DESTROY(m) \ - STMT_START { \ - int rc; \ - if ((rc = _rmutex_close(m))) \ - Perl_croak_nocontext("panic: MUTEX_DESTROY: rc=%i", rc); \ - } STMT_END - -#define COND_INIT(c) \ - STMT_START { \ - int rc; \ - if ((rc = DosCreateEventSem(NULL,c,0,0))) \ - Perl_croak_nocontext("panic: COND_INIT: rc=%i", rc); \ - } STMT_END -#define COND_SIGNAL(c) \ - STMT_START { \ - int rc; \ - if ((rc = DosPostEventSem(*(c))) && rc != OS2_ERROR_ALREADY_POSTED)\ - Perl_croak_nocontext("panic: COND_SIGNAL, rc=%ld", rc); \ - } STMT_END -#define COND_BROADCAST(c) \ - STMT_START { \ - int rc; \ - if ((rc = DosPostEventSem(*(c))) && rc != OS2_ERROR_ALREADY_POSTED)\ - Perl_croak_nocontext("panic: COND_BROADCAST, rc=%i", rc); \ - } STMT_END -/* #define COND_WAIT(c, m) \ - STMT_START { \ - if (WaitForSingleObject(*(c),INFINITE) == WAIT_FAILED) \ - Perl_croak_nocontext("panic: COND_WAIT"); \ - } STMT_END -*/ -#define COND_WAIT(c, m) os2_cond_wait(c,m) - -#define COND_WAIT_win32(c, m) \ - STMT_START { \ - int rc; \ - if ((rc = SignalObjectAndWait(*(m),*(c),INFINITE,FALSE))) \ - Perl_croak_nocontext("panic: COND_WAIT"); \ - else \ - MUTEX_LOCK(m); \ - } STMT_END -#define COND_DESTROY(c) \ - STMT_START { \ - int rc; \ - if ((rc = DosCloseEventSem(*(c)))) \ - Perl_croak_nocontext("panic: COND_DESTROY, rc=%i", rc); \ - } STMT_END -/*#define THR ((struct thread *) TlsGetValue(PL_thr_key)) -*/ - -#ifdef USE_SLOW_THREAD_SPECIFIC -# define pthread_getspecific(k) (*_threadstore()) -# define pthread_setspecific(k,v) (*_threadstore()=v,0) -# define pthread_key_create(keyp,flag) (*keyp=_gettid(),0) -#else /* USE_SLOW_THREAD_SPECIFIC */ -# define pthread_getspecific(k) (*(k)) -# define pthread_setspecific(k,v) (*(k)=(v),0) -# define pthread_key_create(keyp,flag) \ - ( DosAllocThreadLocalMemory(1,(U32*)keyp) \ - ? Perl_croak_nocontext("LocalMemory"),1 \ - : 0 \ - ) -#endif /* USE_SLOW_THREAD_SPECIFIC */ -#define pthread_key_delete(keyp) -#define pthread_self() _gettid() -#define YIELD DosSleep(0) - -#ifdef PTHREADS_INCLUDED /* For ./x2p stuff. */ -int pthread_join(pthread_t tid, void **status); -int pthread_detach(pthread_t tid); -int pthread_create(pthread_t *tid, const pthread_attr_t *attr, - void *(*start_routine)(void*), void *arg); -#endif /* PTHREAD_INCLUDED */ - -#define THREADS_ELSEWHERE - -#else /* USE_5005THREADS */ - #define do_spawn(a) os2_do_spawn(a) #define do_aspawn(a,b,c) os2_do_aspawn((a),(b),(c)) - -#endif /* USE_5005THREADS */ void Perl_OS2_init(char **); void Perl_OS2_init3(char **envp, void **excH, int flags); |