> Btw, using POSIX timers is a solution for this; because
> timer_settime(2) is async-signal safe and I can call it
> from signal handlers.
> 
> (pthreads platforms w/o POSIX timers can use emulation via
>  extra thread)

Done:

The following changes since commit 52102f6ff50eebf8c16667c9b49cef579d2057c1:

  test/lib/leakchecker.rb (find_tempfiles): don't warn for missing files (2018-08-09 02:14:27 +0000)

are available in the Git repository at:

  https://80x24.org/ruby.git tt-posix-v2

for you to fetch changes up to ec91b49271b280cee7b455a480bf43867fb8e9fd:

  thread_pthread: use POSIX timer or thread to get rid of races (2018-08-09 03:45:42 +0000)

----------------------------------------------------------------
Eric Wong (2):
      thread_pthread.c: eliminate timer thread by restructuring GVL
	https://80x24.org/spew/20180809034618.20082-1-e / 80x24.org/raw

      thread_pthread: use POSIX timer or thread to get rid of races
	https://80x24.org/spew/20180809034618.20082-2-e / 80x24.org/raw

 configure.ac              |   8 +
 internal.h                |   3 +
 process.c                 | 140 ++++++-
 signal.c                  |   7 +-
 test/ruby/test_io.rb      |   9 +-
 test/ruby/test_process.rb |   2 +-
 test/ruby/test_thread.rb  |   5 +-
 thread.c                  | 397 +++++++++++--------
 thread_pthread.c          | 946 ++++++++++++++++++++++++++--------------------
 thread_pthread.h          |  20 +-
 thread_win32.c            |  29 +-
 vm_core.h                 |   8 +-
 12 files changed, 991 insertions(+), 583 deletions(-)

I will commit next week (may not be around over the weekend :<).

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>