Skip to content

Instantly share code, notes, and snippets.

View chuckremes's full-sized avatar

Chuck Remes chuckremes

View GitHub Profile
(lldb) thread list
Process 66881 stopped
thread #1: tid = 0x2bbdb, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'ruby.main', queue = 'com.apple.main-thread'
thread #2: tid = 0x2bbf1, 0x00007fffdd9416c6 libsystem_malloc.dylib`tiny_free_list_add_ptr + 223, name = 'ruby.main'
thread #3: tid = 0x2bbf0, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'rbx.finalizer'
thread #4: tid = 0x2bbf2, 0x00007fffdd8ecd96 libsystem_kernel.dylib`kevent + 10, name = 'rbx.console.listener'
thread #5: tid = 0x2c1ce, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'fiber.5'
thread #6: tid = 0x2c1cf, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'fiber.6'
thread #7: tid = 0x2c6b0, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'fiber.8'
thread #8: tid = 0x2c6b1, 0x00007fffdd8ebbf2 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'fiber.9'
(lldb) up
frame #3: 0x00000001001f14c1 rbx`void std::__1::condition_variable::wait<rubinius::memory::FinalizerThread::run(rubinius::State*)::$_0>(this=0x00000001019444f0, __lk=0x0000700008d06d80, __pred=(anonymous class) @ 0x0000700008d06cf8)::$_0) at __mutex_base:375
372 condition_variable::wait(unique_lock<mutex>& __lk, _Predicate __pred)
373 {
374 while (!__pred())
-> 375 wait(__lk);
376 }
377
378 template <class _Clock, class _Duration>
@chuckremes
chuckremes / bt.txt
Last active December 28, 2017 18:21
(lldb) process handle -p true -s false SIGHUP
NAME PASS STOP NOTIFY
=========== ===== ===== ======
SIGHUP true false true
(lldb) cont
Process 66881 resuming
............................................................................................................................................................................................................Process 66881 stopped
* thread #85, name = 'ruby.206', stop reason = EXC_BAD_ACCESS (code=2, address=0x1038ac1c0)
frame #0: 0x00000001038ac1c0
-> 0x1038ac1c0: andl $0x34001, %eax ; imm = 0x34001
rubinius 3.86.c105 (2.3.1 6837f1a2 2017-12-26 5.0.0 PD) [x86_64-darwin16.7.0]
..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Running 645 tests.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................OK!
rubinius 3.86.c105 (2.3.1 6837f1a2 2017-12-26 5.0.0 P) [x86_64-darwin16.7.0]
.........................................................................................................................................................................................................................................................................................
1)
Thread.abort_on_exception raises the exception raised in a Thread in Thread.main when true FAILED
Expected ""
to match /RuntimeError/
main # Rubinius::Loader at core/loader.rb:849
script # Rubinius::Loader at core/loader.rb:664
load_script # Rubinius::CodeLoader at core/code_loader.rb:234
load # Rubinius::CodeLoader::Source(Rubinius::CodeLoader::Script) at core/code_loader.rb:83
run_script # Rubinius::CodeLoader::Source(Rubinius::CodeLoader::Script) at core/code_loader.rb:96
Charless-Air:dotcfg cremes$ ruby -v
rubinius 3.86.c77 (2.3.1 0dc9f752 2017-12-03 5.0.0) [x86_64-darwin16.7.0]
Charless-Air:dotcfg cremes$ rake
buildar tasks unavailable
Run options: --seed 2000
# Running tests:
.........
Thread.abort_on_exception = true
t = Thread.new do
raise 'Should propogate to main thread'
end
sleep 1
def IO.read(offset:, length:, buffer:, sync: true)
if sync
IO::Sync.read(offset: offset, length: length, buffer: buffer)
return buffer
else
future = IO::Async.read(offset: offset, length: length, buffer: buffer)
return future.suspend_until_resolved
end
end
require 'fiber'
f1 = Fiber.new do |f2|
f2.transfer Fiber.current
while true
puts "A"
f2.transfer
end
end