[ruby-cvs:71634] normal:r64542 (trunk): thread_sync.c: common wakeup_{one, all} implementation

normal at ruby-lang.org normal at ruby-lang.org
Sun Aug 26 21:41:16 JST 2018


normal	2018-08-26 21:41:16 +0900 (Sun, 26 Aug 2018)

  New Revision: 64542

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=64542

  Log:
    thread_sync.c: common wakeup_{one,all} implementation
    
    This let us avoid looping in rb_szqueue_max_set, saves us
    some lines of code and reduces binary size slightly
    (numbers from 32-bit x86):
    
             text      data     bss     dec     hex filename
    before: 91272       392     156   91820   166ac thread.o
     after: 91200       392     156   91748   16664 thread.o
    
    Inspiration from this taken from the FUTEX_WAKE op
    of the Linux futex(2) syscall.

  Modified files:
    trunk/thread_sync.c


More information about the ruby-cvs mailing list