Hi Paul,

Two remarks about the pthread module:

- You are certainly aware of the modules 'thread', 'tls', 'lock', 'cond',
  'yield' that we have in gnulib? While the new 'pthreads' module wants to
  be "a trivial subset of the pthreads library", the aforementioned modules
  provide an API very similar to POSIX that provides threading for all
  platforms from FreeBSD 4 to OSF/1 4.0, and in particular also for mingw.

  "Very similar to POSIX" means that you only need to replace pthread_*
  with glthread_*.

  If you think that using the POSIX API literally is important, how about
  changing the gnulib threading modules to adopt the POSIX API (with
  limitations where necessary)?

- pthread.m4 assumes that in order to use threads, it is only necessary to
  add some library at link time. But this is not enough:
    - On OSF/1 and Solaris, -D_REENTRANT needs to be added to CPPFLAGS.
    - On AIX and FreeBSD, -D_THREAD_SAFE needs to be added to CPPFLAGS.
  See m4/threadlib.m4 for details.

Bruno


Reply via email to