Classe: Mongo::Cluster::PeriodicExecutor Privado
- Herda:
-
Objeto
- Objeto
- Mongo::Cluster::PeriodicExecutor
- Inclui:
- BackgroundThread
- Definido em:
- lib/mongo/cluster/periodic_executor.rb
Visão geral
Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.
Um gerente que chama #execute em seus executores em um intervalo regular.
Colapsode resumo constante
- FREQUENCY =
Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.
O intervalo de tempo padrão para o executor periódico executar.
5
Constantes incluídas do Loggable
Recolhimento do Resumo do atributo de instância
- #opções ➤ Objeto Somente leitura privado
Recolhimento do Resumo do método de instância
- #do_work ➤ Objeto privado
-
#executar ➤ Objeto
privado
trigger uma chamada de execução em cada reaper.
-
#flush ➤ Objeto
privado
Execute todas as operações pendentes.
-
#initialize(executors, options = {}) ➤ PeriodicExecutor
construtor
privado
Crie um executor periódico.
- #pre_stop ⇒ Object privado
- #stop(final = false) ➤ Objeto privado
Métodos incluídos do BackgroundThread
Métodos incluídos no Loggable
#log_debug, #log_error, #log_fatal, #log_info, #log_WARN, #logger
Detalhes do construtor
#initialize(executors, options = {}) ➤ PeriodicExecutor
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Crie um executor periódico.
44 45 46 47 48 49 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 44 def inicializar(executores, = {}) @thread = nada @executors = executores @stop_semafore = Semáforo.Novo @opções = end |
Detalhes do atributo da instância
#opções Objeto (somente leitura)
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
51 52 53 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 51 def @opções end |
Detalhes do método de instância
#do_work ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
55 56 57 58 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 55 def do_work executar, executar @stop_semafore.esperar(FREQUENCY) end |
#executar ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
trigger uma chamada de execução em cada reaper.
83 84 85 86 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 83 def executar, executar @executors.cada(&:execute) true end |
#flush ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Execute todas as operações pendentes.
96 97 98 99 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 96 def flush @executors.cada(&:flush) true end |
#pre_stop ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
60 61 62 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 60 def pre_stop @stop_semafore.sinal end |
#stop(final = false) ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
64 65 66 67 68 69 70 71 72 73 |
# Arquivo 'lib/mongo/cluster/periodic_executor.rb', linha 64 def parar(final = false) super começar flush salvar StandardError end true end |