You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by rs...@hyperreal.org on 1999/08/12 09:23:21 UTC

cvs commit: apache-apr/pthreads/src/include ap_config.h

rse         99/08/12 00:23:21

  Modified:    pthreads/src/include ap_config.h
  Log:
  The additional thread support in ap_config.h:
  
  - NO_SERIALIZED_ACCEPT removes any USE_XXX_SERIALIZED_ACCEPT
    to allow one to force no accept serialization without
    having to patch the platform specific section.
  
  - A new PTHREAD_EVERYWHERE define which forces pthread.h
    to be included into _every_ source file. See the
    forthcoming README.rse for details.
  
  Revision  Changes    Path
  1.7       +25 -0     apache-apr/pthreads/src/include/ap_config.h
  
  Index: ap_config.h
  ===================================================================
  RCS file: /home/cvs/apache-apr/pthreads/src/include/ap_config.h,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ap_config.h	1999/06/10 06:25:54	1.6
  +++ ap_config.h	1999/08/12 07:23:20	1.7
  @@ -1361,6 +1361,31 @@
   #define ap_wait_t int
   #endif
   
  +/*
  + * Special Support for User-Space Threading Environments [rse, 12-Aug-1999]
  + */
  +
  +/* optionally make sure the Pthread environment is available in _EVERY_ source 
  +   by including the Pthread header already in this header file. This is
  +   important for portable user-space threading environments which can only use
  +   soft syscall wrapping (i.e. ``#define read _pthread_read'', etc.) */
  +#ifdef PTHREAD_EVERYWHERE
  +#include <pthread.h>
  +#endif
  +
  +/* support for forcing no serialized accept situation. This has to be
  +   used by user-space threading environments, because mostly all (except for
  +   USE_PTHREAD_SERIALIZED_ACCEPT, but this only works on a few platforms)
  +   variants of the inter-process accept lock would suspend the whole process
  +   and not just the acceptor thread. */
  +#ifdef NO_SERIALIZED_ACCEPT
  +#undef USE_FCNTL_SERIALIZED_ACCEPT
  +#undef USE_FLOCK_SERIALIZED_ACCEPT
  +#undef USE_USLOCK_SERIALIZED_ACCEPT
  +#undef USE_SYSVSEM_SERIALIZED_ACCEPT
  +#undef USE_PTHREAD_SERIALIZED_ACCEPT
  +#endif
  +
   #ifdef __cplusplus
   }
   #endif