---
name: "FusionInventory::Agent::Scheduler"
section: "3pm"
platform: "linux"
package: "fusioninventory-agent"
version: "2.2.3-8"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/FusionInventory::Agent::Scheduler"
---

# FusionInventory::Agent::Scheduler(3pm)

A target scheduler

## NAME

FusionInventory::Agent::Scheduler - A target scheduler

## DESCRIPTION

This is the object used by the agent to schedule various targets.

## METHODS

### new(%params)

The constructor. The following parameters are allowed, as keys of the `%params` hash:

- *logger*

  the logger object to use (default: a new stderr logger)

- *lazy*

  a flag to ensure targets whose next scheduled execution date has not been reached yet will get ignored. Only useful when *background* flag is not set.

- *wait*

  a number of second to wait before returning each target. Only useful when *background* flag is not set.

- *background*

  a flag to set if the agent is running as a resident program, aka a daemon in Unix world, and a service in Windows world (default: false)

### *addTarget()*

Add a new target to schedule.

### *getNextTarget()*

Get the next scheduled target.

### *getTargets()*

Get all targets.
