⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.133
Server IP:
185.119.109.197
Server:
Linux managedhosting.chostar.me 5.15.0-160-generic #170-Ubuntu SMP Wed Oct 1 10:06:56 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.1.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
ri
/
3.0.0
/
system
/
View File Name :
page-signals_rdoc.ri
U:RDoc::TopLevel[ i I"signals.rdoc:EFcRDoc::Parser::Simpleo:RDoc::Markup::Document:@parts[S:RDoc::Markup::Heading: leveli: textI"3Caveats for implementing Signal.trap callbacks;To:RDoc::Markup::BlankLine o:RDoc::Markup::Paragraph;[ I"HAs with implementing signal handlers in C or most other languages, ;TI"Gall code passed to Signal.trap must be reentrant. If you are not ;TI"
around the unusability of Mutexes inside a signal handler;T@ o;;0;[o; ;[I"CSignal.trap is safe to use inside blocks passed to Signal.trap;T@ o;;0;[ o; ;[I">arithmetic on Integer and Float (`+', `-', '%', '*', '/');T@ o; ;[ I"EAdditionally, signal handlers do not run between two successive ;TI"Flocal variable accesses, so shortcuts such as `+=' and `-=' will ;TI"Gnot trigger a data race when used on Integer and Float classes in ;TI"signal handlers.;T@ S; ; i;I"BSystem call wrapper methods which are safe inside Signal.trap;T@ o; ;[ I")Since Ruby has wrappers around many ;TI"`{async-signal-safe C functions}[http://man7.org/linux/man-pages/man7/signal-safety.7.html] ;TI"Kthe corresponding wrappers for many IO, File, Dir, and Socket methods ;TI"are safe.;T@ o; ;[I"(Incomplete list);T@ o;;;;[#o;;0;[o; ;[I""Dir.chdir (without block arg);To;;0;[o; ;[I"Dir.mkdir;To;;0;[o; ;[I" Dir.open;To;;0;[o; ;[I"File#truncate;To;;0;[o; ;[I"File.link;To;;0;[o; ;[I"File.open;To;;0;[o; ;[I"File.readlink;To;;0;[o; ;[I"File.rename;To;;0;[o; ;[I"File.stat;To;;0;[o; ;[I"File.symlink;To;;0;[o; ;[I"File.truncate;To;;0;[o; ;[I"File.unlink;To;;0;[o; ;[I"File.utime;To;;0;[o; ;[I" IO#close;To;;0;[o; ;[I"IO#dup;To;;0;[o; ;[I" IO#fsync;To;;0;[o; ;[I"IO#read;To;;0;[o; ;[I"IO#read_nonblock;To;;0;[o; ;[I"IO#stat;To;;0;[o; ;[I"IO#sysread;To;;0;[o; ;[I"IO#syswrite;To;;0;[o; ;[I"IO.select;To;;0;[o; ;[I"IO.pipe;To;;0;[o; ;[I"Process.clock_gettime;To;;0;[o; ;[I"Process.exit!;To;;0;[o; ;[I"Process.fork;To;;0;[o; ;[I"Process.kill;To;;0;[o; ;[I"Process.pid;To;;0;[o; ;[I"Process.ppid;To;;0;[o; ;[I"Process.waitpid;To; ;[I"...;T: @file@:0@omit_headings_from_table_of_contents_below0