MediaWiki  master
NullJob Class Reference

Degenerate job that does nothing, but can optionally replace itself in the queue and/or sleep for a brief time period. More...

Inheritance diagram for NullJob:
Collaboration diagram for NullJob:

Public Member Functions

 __construct (array $params)
 
 run ()
 Run the job. More...
 
- Public Member Functions inherited from Job
 __construct ( $command, $params=null)
 
 allowRetries ()
 
 getDeduplicationInfo ()
 Subclasses may need to override this to make duplication detection work. More...
 
 getLastError ()
 
 getMetadata ( $field=null)
 
 getParams ()
 
 getQueuedTimestamp ()
 
 getReadyTimestamp ()
 
 getReleaseTimestamp ()
 
 getRequestId ()
 
 getRootJobParams ()
 
 getTitle ()
 
 getType ()
 
 hasExecutionFlag ( $flag)
 
 hasRootJobParams ()
 
 ignoreDuplicates ()
 Whether the queue should reject insertion of this job if a duplicate exists. More...
 
 isRootJob ()
 
 setMetadata ( $field, $value)
 
 teardown ( $status)
 Do any final cleanup after run(), deferred updates, and all DB commits happen. More...
 
 toString ()
 
 workItemCount ()
 

Additional Inherited Members

- Static Public Member Functions inherited from Job
static factory ( $command, $params=[])
 Create the appropriate object to handle a specific job. More...
 
static newRootJobParams ( $key)
 Get "root job" parameters for a task. More...
 
- Public Attributes inherited from Job
string $command
 
array $metadata = []
 Additional queue metadata. More...
 
array $params
 Array of job parameters. More...
 
- Protected Member Functions inherited from Job
 addTeardownCallback ( $callback)
 
 setLastError ( $error)
 
- Protected Attributes inherited from Job
string $error
 Text for error that occurred last. More...
 
int $executionFlags = 0
 Bitfield of JOB_* class constants. More...
 
bool $removeDuplicates = false
 Expensive jobs may set this to true. More...
 
callable [] $teardownCallbacks = []
 
Title $title
 

Detailed Description

Degenerate job that does nothing, but can optionally replace itself in the queue and/or sleep for a brief time period.

These can be used to represent "no-op" jobs or test lock contention and performance.

Example:
Inserting a null job in the configured job queue:
$ php maintenance/eval.php
> $job = new NullJob( [ 'lives' => 10 ] );
> $queue->push( $job );
You can then confirm the job has been enqueued by using the showJobs.php maintenance utility:
$ php maintenance/showJobs.php --group
null: 1 queue; 0 claimed (0 active, 0 abandoned)
$

Definition at line 47 of file NullJob.php.

Constructor & Destructor Documentation

◆ __construct()

NullJob::__construct ( array  $params)
Parameters
array$paramsJob parameters (lives, usleep)

Implements GenericParameterJob.

Definition at line 51 of file NullJob.php.

Member Function Documentation

◆ run()

NullJob::run ( )

Run the job.

Returns
bool Success

Implements RunnableJob.

Definition at line 62 of file NullJob.php.

References $job, Job\$params, and JobQueueGroup\singleton().


The documentation for this class was generated from the following file: