pike.git / src / threads.h

version» Context lines:

pike.git/src/threads.h:1:   /* -  * $Id: threads.h,v 1.60 1998/11/22 11:03:23 hubbe Exp $ +  * $Id: threads.h,v 1.61 1999/05/08 04:46:08 hubbe Exp $    */   #ifndef THREADS_H   #define THREADS_H      #include "machine.h"   #include "interpret.h"   #include "object.h"   #include "error.h"   #ifdef HAVE_SYS_TYPES_H   /* Needed for pthread_t on OSF/1 */
pike.git/src/threads.h:172:    * No cond_vars yet    */      #endif /* SGI_SPROC_THREADS */         #ifdef NT_THREADS   #include <process.h>   #include <windows.h>    - #define THREAD_T HANDLE + #define THREAD_T unsigned   #define th_setconcurrency(X) - #define th_create(ID,fun,arg) (!(*(ID)=_beginthread(fun, 2*1024*1024, arg))) - #define th_create_small(ID,fun,arg) (!(*(ID)=_beginthread(fun, 32768, arg))) + #define th_create(ID,fun,arg) (!_beginthreadex(NULL, 2*1024*1024,fun, arg,0,ID)) + #define th_create_small(ID,fun,arg) (!_beginthreadex(NULL, 8192*sizeof(char *), fun,arg,0,ID)) + #define TH_RETURN_TYPE unsigned __stdcall   #define th_exit(foo) _endthread(foo)   #define th_join(ID,res) /******************* FIXME! ****************/   #define th_self() GetCurrentThread()   #define th_destroy(X)   #define th_yield() Sleep(0)   #define th_equal(X,Y) ((X)==(Y))   #define th_hash(X) ((unsigned INT32)(X))      #define MUTEX_T HANDLE   #define mt_init(X) CheckValidHandle((*(X)=CreateMutex(NULL, 0, NULL)))
pike.git/src/threads.h:301: Inside #if defined(PROFILING) and #if defined(HAVE_GETHRTIME)
   long long accounted_time;    long long time_base;   #endif   #endif      #ifdef THREAD_TRACE    int t_flag;   #endif /* THREAD_TRACE */   };    + #ifndef TH_RETURN_TYPE + #define TH_RETURN_TYPE void * + #endif +    #ifndef th_destroy   #define th_destroy(X)   #endif      #ifndef th_yield   #define th_yield()   #endif      #ifndef th_equal   #define th_equal(X,Y) (!MEMCMP(&(X),&(Y),sizeof(THREAD_T)))
pike.git/src/threads.h:479:    while (threads_disabled) { \    THREADS_FPRINTF(1, (stderr, "THREADS_DISALLOW_UID(): Wait...\n")); \    co_wait(&threads_disabled_change, &interpreter_lock); \    } \    SWAP_IN_THREAD(_tmp_uid);\    } \    } while(0)      /* Prototypes begin here */   struct thread_starter; - void *new_thread_func(void * data); + TH_RETURN_TYPE new_thread_func(void * data);   void f_thread_create(INT32 args);   void f_thread_set_concurrency(INT32 args);   void f_this_thread(INT32 args);   struct mutex_storage;   struct key_storage;   void f_mutex_lock(INT32 args);   void f_mutex_trylock(INT32 args);   void init_mutex_obj(struct object *o);   void exit_mutex_obj(struct object *o);   void init_mutex_key_obj(struct object *o);