summaryrefslogtreecommitdiffstats
path: root/thread_win32.c
Commit message (Collapse)AuthorAgeFilesLines
* * thread_win32.c (native_thread_destroy): decreased the probability ofusa2009-12-301-2/+1
| | | | | | | | using the interrupt event in the thread termination. see [ruby-core:27199]. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@26207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (w32_error): should report the function.usa2009-12-301-7/+7
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@26206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_thread_atfork_internal): reinitialize global locknobu2009-11-181-0/+2
| | | | | | | | at fork to get rid of deadlock. based on the patch from Hongli Lai in [ruby-core:26783]. [ruby-core:26361] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (thread_errno): CreateThread does not set errno.nobu2009-11-121-1/+3
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_create_core): moved failure handling fromnobu2009-11-121-2/+1
| | | | | | | native_thread_core(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_{pthread,win32}.c (native_stop_timer_thread): join the threadusa2009-11-021-0/+11
| | | | | | | | | | | | | here. * thread_{pthread,win32}.c (native_reset_timer_thread): new function. * thread.c (rb_thread_stop_timer_thread, rb_thread_reset_timer_thread): call above function instead of simply seting 0. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (ruby_cleanup): the order of local variables on stack isnobu2009-04-191-1/+1
| | | | | | | | | | | | undefined. should use outermost VALUE for ruby_init_stack. * gc.c (ruby_get_stack_grow_direction, Init_stack): allows volatile pointer. * thread_*.c (ruby_init_stack): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@23210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (Init_native_thread): need to callusa2008-12-221-0/+1
| | | | | | | | ruby_thread_set_native() here. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.c (thread_timer): checks working flags again.nobu2008-11-081-1/+10
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (thread_start_func_1): use already gotten stack info.nobu2008-11-071-18/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_thread_stop_timer_thread): terminates timer threadnobu2008-11-061-6/+29
| | | | | | | immediately. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c, include/ruby/win32.h (rb_w32_open): overlapped fileusa2008-08-281-9/+0
| | | | | | | | | | | | | | | | I/O support. * win32/win32.c, include/ruby/win32.h (rb_w32_pipe): overlapped pipe I/O support. * wn32/win32.c (rb_w32_read, rb_w32_write): overlapped I/O support to enable canceling I/O. * thread_win32.c (ubf_handle): remove workaround. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c, vm_core.h: add manual priority supportko12008-08-131-0/+4
| | | | | | | | | | | using time slice. if you enable USE_NATIVE_THREAD_PRIORITY macro, this mechanism is ignored. [ruby-dev:33124] * thread_pthread.c, thread_win32.c: ditto. * test/ruby/test_thread.rb: fix test parameter. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): revertedusa2008-07-281-0/+10
| | | | | | | | | | | r18239 because r18245 made the changes unnecessary. * thread.c (rb_mutex_struct): define after including thread_{pthread, win32}.c. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.[ch]: moved definitions of cond_every_entry andusa2008-07-281-10/+0
| | | | | | | | | rb_thread_cond_struct from .c to .h because rb_thread_cond_struct is used in vm_core.h. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (overlapped_socket_io): avoid warnings.usa2008-07-241-4/+4
| | | | | | | | * thread_win32.c (ubf_handle): refactoring. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_start_func_2): wake up joining threads.nobu2008-07-161-14/+1
| | | | | | | | | | | * thread.c (sleep_forever, sleep_timeval): return when interrupted. [ruby-dev:35542] * thread.c (timer_thread_function): restore main thread status. [ruby-core:17270] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (ubf_handle): cancel blocking IO if it can (onlyusa2008-07-151-0/+11
| | | | | | | | | | Vista). see [ruby-dev:35446] * win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (sleep_forever): wait until timed out. [ruby-core:17270]nobu2008-07-091-21/+3
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_{pthread,win32}.c (native_sleep): wait until timed out.nobu2008-07-091-3/+21
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs morenobu2008-07-091-1/+2
| | | | | | | stack for debug. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_initialize): NUM2INT() returns int.nobu2008-07-051-4/+2
| | | | | | | | | * thread.c (timer_thread_function), thread_pthread.c (thread_timer), thread_win32.c (timer_thread_func), thread_{pthread,win32}.c (rb_thread_create_timer_thread): passing VM. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (native_sleep): must block reentrance when accessingusa2008-06-211-0/+4
| | | | | | | | | th->unblock. fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com> git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (native_sleep): fix to decrement sleeper count.ko12008-06-191-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c, thread_win32.c, vm_core.h: try to remove false positive ofmame2008-06-191-2/+2
| | | | | | | deadlock detection. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.h (STACK_UPPER): moved from gc.cnobu2008-06-141-4/+27
| | | | | | | | * thread.c, thread_{pthread,win32}.c (ruby_init_stack, ruby_thread_init_stack): moved stack initialization from gc.c. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (native_sleep): fixed previous commit.usa2008-06-121-4/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: addmame2008-06-121-3/+11
| | | | | | | | | deadlock detection. [ruby-dev:35044] * bootstraptest/test_thread.rb: add tests for above. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h (struct rb_unblock_callback), thread.cnobu2008-05-301-4/+4
| | | | | | | | | | | (set_unblock_function), thread_{pthread,win32}.c (native_sleep): extracted from struct rb_thread_struct. * thread.c (reset_unblock_function): not check interrupts at leaving blocking region. [ruby-dev:34874] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:nobu2008-04-261-5/+5
| | | | | | | suppress warnings. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handleusa2008-01-181-1/+1
| | | | | | | | by timer_thread. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_cleanup_func): ignore errors from destroying mutexnobu2008-01-181-0/+1
| | | | | | | | | of dead thread. [ruby-core:15069] * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * $Date$ keyword removed to avoid inclusion of locale dependentakr2008-01-061-1/+0
| | | | | | | string. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.c, thread_pthread.h, thread_win32.c,ko12007-12-251-10/+21
| | | | | | | | | | thread_win32.c: make some functions static functions. a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14407] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),ko12007-12-251-3/+12
| | | | | | | | | | | RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED(). * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice event until sleep. * bootstraptest/test_thread.rb: add a test for time limited join test. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * common.mk, *.ci: renamed to *.c.ko12007-12-201-0/+508
* eval_laod.c: renamed to load.c. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e