linux-BR.org

Notícias de software livre e tecnologias

É um mergulho profundo, por isso está dividido em várias partes:
Você está lendo “Bitmasks, Threads e Interrupções: Ruby simultâneo e incolor”.E há várias chamadas de função que são invocadas: RUBY_VM_CHECK_INTS_BLOCKING, RUBY_VM_CHECK_INTS, rb_thread_check_ints, vm_check_ints_blocking, vm_check_ints.https://github.com/jruby/jruby/blob/master/core/src/main/java/org/jruby/RubyThread.java#L822 ↩︎
As diferentes sintaxes numéricas em Ruby (binário, octal, decimal, hexadecimal) são na verdade apenas açúcar na classe Integer.Quando definido, ele executa RB_VM_LOCKING() na thread:
É um nicho, mas parece desempenhar um papel importante ao dar a toda a VM acesso exclusivo a uma operação.Você se lembrará deste código do código Thread#kill acionado anteriormente pelo pendente_interrupt_queue:
Existem duas maneiras de acionar esse código:
Ainda na zona de nicho, temos POSTPONED_JOB_INTERRUPT_MASK.

Fonte: https://jpcamara.com/2025/10/22/bitmasks-threads-and-interrupts-concurrent.html