nobu
c7853b4344
* eval.c (ruby_cleanup): the order of local variables on stack is
...
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: svn+ssh://ci.ruby-lang.org/ruby/trunk@23210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-19 05:43:20 +00:00
usa
b451955bbb
* thread_win32.c (Init_native_thread): need to call
...
ruby_thread_set_native() here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-22 10:12:02 +00:00
nobu
641f43de97
* thread_pthread.c (thread_timer): checks working flags again.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-08 15:31:05 +00:00
nobu
df6ea23faf
* thread_win32.c (thread_start_func_1): use already gotten stack info.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-07 12:23:15 +00:00
nobu
5732566f4d
* thread.c (rb_thread_stop_timer_thread): terminates timer thread
...
immediately.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-06 13:21:26 +00:00
usa
3c8dca55c4
* win32/win32.c, include/ruby/win32.h (rb_w32_open): overlapped file
...
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: svn+ssh://ci.ruby-lang.org/ruby/trunk@18897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-28 12:46:58 +00:00
ko1
16612b360b
* thread.c, vm_core.h: add manual priority support
...
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: svn+ssh://ci.ruby-lang.org/ruby/trunk@18570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 07:53:35 +00:00
usa
a73ba1def7
* thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
...
r18239 because r18245 made the changes unnecessary.
* thread.c (rb_mutex_struct): define after including thread_{pthread,
win32}.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-28 12:27:43 +00:00
usa
9b3aade1b6
* thread_win32.[ch]: moved definitions of cond_every_entry and
...
rb_thread_cond_struct from .c to .h because rb_thread_cond_struct
is used in vm_core.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-28 07:02:07 +00:00
usa
f92478c0fb
* win32/win32.c (overlapped_socket_io): avoid warnings.
...
* thread_win32.c (ubf_handle): refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-24 07:05:49 +00:00
nobu
47e3f4e1ae
* thread.c (thread_start_func_2): wake up joining threads.
...
* 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: svn+ssh://ci.ruby-lang.org/ruby/trunk@18094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-16 19:19:36 +00:00
usa
25498d24c8
* thread_win32.c (ubf_handle): cancel blocking IO if it can (only
...
Vista). see [ruby-dev:35446]
* win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 09:14:09 +00:00
nobu
a14682906f
* thread.c (sleep_forever): wait until timed out. [ruby-core:17270]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-09 13:41:19 +00:00
nobu
7df7982b47
* thread_{pthread,win32}.c (native_sleep): wait until timed out.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-09 11:35:06 +00:00
nobu
a534e39a87
* thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs more
...
stack for debug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-09 09:17:09 +00:00
nobu
6bbbf9889d
* thread.c (thread_initialize): NUM2INT() returns int.
...
* 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: svn+ssh://ci.ruby-lang.org/ruby/trunk@17892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-05 13:22:29 +00:00
usa
8724448ed5
* thread_win32.c (native_sleep): must block reentrance when accessing
...
th->unblock.
fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 07:48:29 +00:00
ko1
af94c81302
* thread_win32.c (native_sleep): fix to decrement sleeper count.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 15:19:38 +00:00
mame
4b645dc8f3
* thread.c, thread_win32.c, vm_core.h: try to remove false positive of
...
deadlock detection.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 14:18:46 +00:00
nobu
fc3c60f608
* gc.h (STACK_UPPER): moved from gc.c
...
* thread.c, thread_{pthread,win32}.c (ruby_init_stack,
ruby_thread_init_stack): moved stack initialization from gc.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-14 02:59:19 +00:00
usa
4b022866ee
* thread_win32.c (native_sleep): fixed previous commit.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-12 13:20:55 +00:00
mame
6f5aaff73b
* thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: add
...
deadlock detection. [ruby-dev:35044]
* bootstraptest/test_thread.rb: add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-12 13:01:38 +00:00
nobu
1b63d7bc92
* vm_core.h (struct rb_unblock_callback), thread.c
...
(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: svn+ssh://ci.ruby-lang.org/ruby/trunk@16699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-30 01:52:38 +00:00
nobu
87e4ad0a23
* io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
...
suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 09:36:35 +00:00
usa
caa539f2a3
* thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
...
by timer_thread.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-18 15:15:40 +00:00
nobu
3a4bfbad09
* thread.c (thread_cleanup_func): ignore errors from destroying mutex
...
of dead thread. [ruby-core:15069]
* thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-18 06:57:08 +00:00
akr
6cdef2dc7e
* $Date$ keyword removed to avoid inclusion of locale dependent
...
string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-06 15:49:38 +00:00
ko1
42f0b52f77
* thread_pthread.c, thread_pthread.h, thread_win32.c,
...
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: svn+ssh://ci.ruby-lang.org/ruby/trunk@14657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 04:35:17 +00:00
ko1
5f0b8afb97
* vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
...
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: svn+ssh://ci.ruby-lang.org/ruby/trunk@14654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 04:16:06 +00:00
ko1
c334a09f7a
* common.mk, *.ci: renamed to *.c.
...
* eval_laod.c: renamed to load.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20 09:29:46 +00:00