ActionScheduler_WPCLI_QueueRunner::setup()publicWC 1.0

Set up the Queue before processing.

Method of the class: ActionScheduler_WPCLI_QueueRunner{}

No Hooks.

Return

Int. The number of actions that will be run.

Usage

$ActionScheduler_WPCLI_QueueRunner = new ActionScheduler_WPCLI_QueueRunner();
$ActionScheduler_WPCLI_QueueRunner->setup( $batch_size, $hooks, $group, $force );
$batch_size(int) (required)
The batch size to process.
$hooks(array)
The hooks being used to filter the actions claimed in this batch.
Default: array()
$group(string)
The group of actions to claim with this batch.
Default: ''
$force(true|false)
Whether to force running even with too many concurrent processes.
Default: false

ActionScheduler_WPCLI_QueueRunner::setup() code WC 9.3.3

public function setup( $batch_size, $hooks = array(), $group = '', $force = false ) {
	$this->run_cleanup();
	$this->add_hooks();

	// Check to make sure there aren't too many concurrent processes running.
	if ( $this->has_maximum_concurrent_batches() ) {
		if ( $force ) {
			WP_CLI::warning( __( 'There are too many concurrent batches, but the run is forced to continue.', 'woocommerce' ) );
		} else {
			WP_CLI::error( __( 'There are too many concurrent batches.', 'woocommerce' ) );
		}
	}

	// Stake a claim and store it.
	$this->claim = $this->store->stake_claim( $batch_size, null, $hooks, $group );
	$this->monitor->attach( $this->claim );
	$this->actions = $this->claim->get_actions();

	return count( $this->actions );
}