#include <errno.h>
Go to the source code of this file.
Defines | |
| #define | ATOMIC_TEST(var) ((var) ? ((var) = 0, 1) : 0) |
| #define | ATOMIC_SET(var, val) ((var) = (val)) |
| #define | ATOMIC_INC(var) (++(var)) |
| #define | ATOMIC_DEC(var) (--(var)) |
| #define | TRAP_BEG |
| #define | TRAP_END |
| #define | RUBY_CRITICAL(statements) |
| #define | DEFER_INTS (rb_prohibit_interrupt++) |
| #define | ALLOW_INTS |
| #define | ENABLE_INTS (rb_prohibit_interrupt--) |
| #define | THREAD_TICK 500 |
| #define | CHECK_INTS |
Typedefs | |
| typedef int | rb_atomic_t |
Functions | |
| VALUE | rb_with_disable_interrupt (VALUE(*(ANYARGS), VALUE)) |
| void | rb_trap_restore_mask (void) |
| void | rb_thread_schedule (void) |
Variables | |
| RUBY_EXTERN rb_atomic_t | rb_trap_immediate |
| RUBY_EXTERN int | rb_prohibit_interrupt |
| RUBY_EXTERN rb_atomic_t | rb_trap_pending |
| RUBY_EXTERN int | rb_thread_critical |
| RUBY_EXTERN int | rb_thread_tick |
|
|
Value: do {\ rb_prohibit_interrupt--;\ CHECK_INTS;\ } while (0) Definition at line 69 of file rubysig.h. Referenced by rb_load(), rb_singleton_class(), and ruby_init(). |
|
|
|
|
|
Definition at line 45 of file rubysig.h. Referenced by sighandler(). |
|
|
Definition at line 44 of file rubysig.h. Referenced by sighandler(). |
|
|
Definition at line 43 of file rubysig.h. Referenced by sighandler(). |
|
|
Value: do {\ if (!(rb_prohibit_interrupt || rb_thread_critical)) {\ if (rb_thread_tick-- <= 0) {\ rb_thread_tick = THREAD_TICK;\ rb_thread_schedule();\ }\ }\ if (rb_trap_pending) rb_trap_exec();\ } while (0) |
|
|
Definition at line 68 of file rubysig.h. Referenced by rb_load(), rb_singleton_class(), and rb_with_disable_interrupt(). |
|
|
Definition at line 73 of file rubysig.h. Referenced by rb_with_disable_interrupt(). |
|
|
Value: do {\ int trap_immediate = rb_trap_immediate;\ rb_trap_immediate = 0;\ statements;\ rb_trap_immediate = trap_immediate;\ } while (0) Definition at line 58 of file rubysig.h. Referenced by add_heap(), obj_free(), rb_gc_call_finalizer_at_exit(), rb_gc_unregister_address(), ruby_xfree(), ruby_xmalloc(), and ruby_xrealloc(). |
|
|
|
|
|
Value: do {\ int saved_errno = 0;\ int trap_immediate = rb_trap_immediate;\ rb_trap_immediate = 1 Definition at line 48 of file rubysig.h. Referenced by appendline(), io_cntl(), io_fflush(), io_fread(), io_fwrite(), io_getpartial(), rb_f_syscall(), rb_getc(), rb_io_each_byte(), rb_io_eof(), rb_io_getc(), rb_io_sysread(), rb_io_syswrite(), rb_thread_flock(), rb_thread_schedule(), rb_thread_select(), rb_thread_sleep(), rb_thread_sleep_forever(), rb_thread_wait_for(), rb_waitpid(), and swallow(). |
|
|
Value: rb_trap_immediate = trap_immediate;\ saved_errno = errno;\ CHECK_INTS;\ errno = saved_errno;\ } while (0) Definition at line 52 of file rubysig.h. Referenced by appendline(), io_cntl(), io_fflush(), io_fread(), io_fwrite(), io_getpartial(), rb_f_syscall(), rb_getc(), rb_io_each_byte(), rb_io_eof(), rb_io_getc(), rb_io_sysread(), rb_io_syswrite(), rb_thread_flock(), rb_thread_schedule(), rb_thread_select(), rb_thread_sleep(), rb_thread_sleep_forever(), rb_thread_wait_for(), rb_waitpid(), and swallow(). |
|
|
|
|
|
Definition at line 664 of file signal.c. References NULL, and trap_last_mask. Referenced by rb_f_throw(), and rb_longjmp(). |
|
|
Referenced by rb_any_cmp(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 65 of file rubysig.h. Referenced by rb_thread_restore_context(), rb_thread_save_context(), rb_thread_switch(), rb_trap_eval(), and sighandler(). |
|
|
|
1.3.5