MediaWiki  master
PoolCounterNull Class Reference

A default PoolCounter, which provides no locking. More...

Inheritance diagram for PoolCounterNull:
Collaboration diagram for PoolCounterNull:

Public Member Functions

 __construct ()
 
 acquireForAnyone ( $timeout=null)
 I want to do this task, but if anyone else does it instead, it's also fine for me. More...
 
 acquireForMe ( $timeout=null)
 I want to do this task and I need to do it myself. More...
 
 release ()
 I have successfully finished my task. More...
 
- Public Member Functions inherited from PoolCounter
 getKey ()
 
 isFastStaleEnabled ()
 

Additional Inherited Members

- Static Public Member Functions inherited from PoolCounter
static factory (string $type, string $key)
 Create a Pool counter. More...
 
- Public Attributes inherited from PoolCounter
const DONE = 3
 
const ERROR = -1
 
const LOCK_HELD = -5
 
const LOCKED = 1
 
const NOT_LOCKED = -2
 
const QUEUE_FULL = -3
 
const RELEASED = 2
 
const TIMEOUT = -4
 
- Protected Member Functions inherited from PoolCounter
 __construct (array $conf, string $type, string $key)
 
 hashKeyIntoSlots ( $type, $key, $slots)
 Given a key (any string) and the number of lots, returns a slot key (a prefix with a suffix integer from the [0..($slots-1)] range). More...
 
 onAcquire ()
 Update any lock tracking information when the lock is acquired. More...
 
 onRelease ()
 Update any lock tracking information when the lock is released. More...
 
 precheckAcquire ()
 Checks that the lock request is sane. More...
 
- Protected Attributes inherited from PoolCounter
string $key
 All workers with the same key share the lock. More...
 
int $maxqueue
 If this number of workers are already working/waiting, fail instead of wait. More...
 
int $slots = 0
 Maximum number of workers working on this task type, regardless of key. More...
 
int $timeout
 Maximum time in seconds to wait for the lock. More...
 
int $workers
 Maximum number of workers working on tasks with the same key simultaneously. More...
 

Detailed Description

A default PoolCounter, which provides no locking.

Definition at line 27 of file PoolCounterNull.php.

Constructor & Destructor Documentation

◆ __construct()

PoolCounterNull::__construct ( )

Definition at line 29 of file PoolCounterNull.php.

Member Function Documentation

◆ acquireForAnyone()

PoolCounterNull::acquireForAnyone (   $timeout = null)

I want to do this task, but if anyone else does it instead, it's also fine for me.

I will read its cached data.

Parameters
int | null$timeoutWait timeout, or null to use value passed to the constructor
Returns
Status Value is one of Locked/Done/Error

Reimplemented from PoolCounter.

Definition at line 37 of file PoolCounterNull.php.

References PoolCounter\LOCKED, and StatusValue\newGood().

◆ acquireForMe()

PoolCounterNull::acquireForMe (   $timeout = null)

I want to do this task and I need to do it myself.

Parameters
int | null$timeoutWait timeout, or null to use value passed to the constructor
Returns
Status Value is one of Locked/Error

Reimplemented from PoolCounter.

Definition at line 33 of file PoolCounterNull.php.

References PoolCounter\LOCKED, and StatusValue\newGood().

◆ release()

PoolCounterNull::release ( )

I have successfully finished my task.

Lets another one grab the lock, and returns the workers waiting on acquireForAnyone()

Returns
Status Value is one of Released/NotLocked/Error

Reimplemented from PoolCounter.

Definition at line 41 of file PoolCounterNull.php.

References StatusValue\newGood(), and PoolCounter\RELEASED.


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