Method: Fluent::PluginHelper::Thread#stop

Defined in:
lib/fluent/plugin_helper/thread.rb

#stopObject



124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/fluent/plugin_helper/thread.rb', line 124

def stop
  super
  wakeup_threads = []
  @_threads_mutex.synchronize do
    @_threads.each_value do |thread|
      thread[:_fluentd_plugin_helper_thread_running] = false
      wakeup_threads << thread if thread.alive? && thread.status == "sleep"
    end
  end
  wakeup_threads.each do |thread|
    if thread.alive?
      thread.wakeup
    end
  end
end