Class: GLib::MainLoop
- Inherits:
-
Object
- Object
- GLib::MainLoop
- Defined in:
- lib/ffi-glib/main_loop.rb
Overview
Overrides for GMainLoop, GLib’s event loop
Defined Under Namespace
Classes: ThreadEnabler
Constant Summary collapse
- EXCEPTIONS =
[]
- RUNNING_LOOPS =
[]
Class Method Summary collapse
Instance Method Summary collapse
- #run_with_thread_enabler ⇒ Object (also: #run)
Class Method Details
.handle_exception(exception) ⇒ Object
53 54 55 56 57 58 59 |
# File 'lib/ffi-glib/main_loop.rb', line 53 def self.handle_exception(exception) current_loop = RUNNING_LOOPS.last raise exception unless current_loop EXCEPTIONS << exception current_loop.quit end |
Instance Method Details
#run_with_thread_enabler ⇒ Object Also known as: run
42 43 44 45 46 47 48 49 50 51 |
# File 'lib/ffi-glib/main_loop.rb', line 42 def run_with_thread_enabler ThreadEnabler.instance.setup_idle_handler RUNNING_LOOPS << self result = run_without_thread_enabler exception = EXCEPTIONS.shift RUNNING_LOOPS.pop raise exception if exception result end |