PocketMine-MP 5.37.4 git-dbb0a3db4df7e1ea8e62dc67aa0a6030f2ac20e4
Loading...
Searching...
No Matches
pocketmine\timings\TimingsHandler Class Reference
+ Collaboration diagram for pocketmine\timings\TimingsHandler:

Public Member Functions

 __construct (private string $name, private ?TimingsHandler $parent=null, private string $group=Timings::GROUP_MINECRAFT)
 
 getGroup ()
 
 getName ()
 
 reset ()
 
 startTiming ()
 
 stopTiming ()
 
 time (\Closure $closure)
 

Static Public Member Functions

static createReportFile (string $directory, ?string $fileName=null)
 
static getCollectCallbacks ()
 
static getReloadCallbacks ()
 
static getStartTime ()
 
static getToggleCallbacks ()
 
static isEnabled ()
 
static printCurrentThreadRecords ()
 
static reload ()
 
static requestPrintTimings ()
 
static setEnabled (bool $enable=true)
 
static tick (bool $measure=true)
 

Detailed Description

@phpstan-type CollectPromise Promise<list<string>>

Definition at line 51 of file TimingsHandler.php.

Constructor & Destructor Documentation

◆ __construct()

pocketmine\timings\TimingsHandler::__construct ( private string $name,
private ?TimingsHandler $parent = null,
private string $group = Timings::GROUP_MINECRAFT )

Definition at line 240 of file TimingsHandler.php.

Member Function Documentation

◆ createReportFile()

static pocketmine\timings\TimingsHandler::createReportFile ( string $directory,
?string $fileName = null )
static

Creates a timings report file locally in the provided file path. Collects timings data and returns a promise that resolves with the created file.

Parameters
string$directorydirectory path to the timings folder.
string | null$fileNameOptional custom file name, If null, uses default timings file naming

@phpstan-return Promise<string>

Definition at line 342 of file TimingsHandler.php.

◆ getCollectCallbacks()

static pocketmine\timings\TimingsHandler::getCollectCallbacks ( )
static

@phpstan-return ObjectSet<\Closure() : list<CollectPromise>>

Definition at line 88 of file TimingsHandler.php.

◆ getGroup()

pocketmine\timings\TimingsHandler::getGroup ( )

Definition at line 248 of file TimingsHandler.php.

◆ getName()

pocketmine\timings\TimingsHandler::getName ( )

Definition at line 246 of file TimingsHandler.php.

◆ getReloadCallbacks()

static pocketmine\timings\TimingsHandler::getReloadCallbacks ( )
static

@phpstan-return ObjectSet<\Closure() : void>

Definition at line 83 of file TimingsHandler.php.

◆ getStartTime()

static pocketmine\timings\TimingsHandler::getStartTime ( )
static

Definition at line 205 of file TimingsHandler.php.

◆ getToggleCallbacks()

static pocketmine\timings\TimingsHandler::getToggleCallbacks ( )
static

@phpstan-return ObjectSet<\Closure(bool $enable) : void>

Definition at line 78 of file TimingsHandler.php.

◆ isEnabled()

static pocketmine\timings\TimingsHandler::isEnabled ( )
static

Definition at line 188 of file TimingsHandler.php.

◆ printCurrentThreadRecords()

static pocketmine\timings\TimingsHandler::printCurrentThreadRecords ( )
static
Returns
string[] @phpstan-return list<string>

Definition at line 94 of file TimingsHandler.php.

◆ reload()

static pocketmine\timings\TimingsHandler::reload ( )
static

Definition at line 216 of file TimingsHandler.php.

◆ requestPrintTimings()

static pocketmine\timings\TimingsHandler::requestPrintTimings ( )
static

Collects timings asynchronously, allowing timings from multiple threads to be aggregated into a single report.

NOTE: You need to add a callback to collectCallbacks if you want to include timings from other threads. They won't be automatically collected if you don't, since the main thread has no way to access them.

This is an asynchronous operation, and the result is returned as a promise. The caller must add a callback to the returned promise to get the complete timings report.

@phpstan-return Promise<list<string>>

Definition at line 163 of file TimingsHandler.php.

◆ reset()

pocketmine\timings\TimingsHandler::reset ( )

Definition at line 327 of file TimingsHandler.php.

◆ setEnabled()

static pocketmine\timings\TimingsHandler::setEnabled ( bool $enable = true)
static

Definition at line 192 of file TimingsHandler.php.

◆ startTiming()

pocketmine\timings\TimingsHandler::startTiming ( )

Definition at line 250 of file TimingsHandler.php.

◆ stopTiming()

pocketmine\timings\TimingsHandler::stopTiming ( )

Definition at line 279 of file TimingsHandler.php.

◆ tick()

static pocketmine\timings\TimingsHandler::tick ( bool $measure = true)
static

Definition at line 225 of file TimingsHandler.php.

◆ time()

pocketmine\timings\TimingsHandler::time ( \Closure $closure)
Returns
mixed the result of the given closure

@phpstan-template TClosureReturn @phpstan-param \Closure() : TClosureReturn $closure @phpstan-return TClosureReturn

Definition at line 315 of file TimingsHandler.php.


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