Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

evstat(3) [php man page]

EVSTAT(3)								 1								 EVSTAT(3)

The EvStat class

INTRODUCTION
EvStat monitors a file system path for attribute changes. It calls stat() on that path in regular intervals(or when the OS signals it changed) and sees if it changed compared to the last time, invoking the callback if it did. The path does not need to exist: changing from "path exists" to "path does not exist" is a status change like any other. The condition "path does not exist" is signified by the 'nlink' item being 0(returned by EvStat::attr method). The path must not end in a slash or contain special components such as '.' or .. . The path should be absolute: if it is relative and the working directory changes, then the behaviour is undefined. Since there is no portable change notification interface available, the portable implementation simply calls stat() regularly on the path to see if it changed somehow. For this case a recommended polling interval can be specified. If one specifies a polling interval of 0.0 (highly recommended) then a suitable, unspecified default value will be used(which could be expected to be around 5 seconds, although this might change dynamically). libev will also impose a minimum interval which is currently around 0.1 , but that's usually overkill. This watcher type is not meant for massive numbers of EvStat watchers, as even with OS-supported change notifications, this can be resource-intensive. CLASS SYNOPSIS
EvStat EvStatextends EvWatcher Properties o public$path o public$interval Inherited properties o public$is_active o public$data o public$is_pending o public$priority Methods o public array EvStat::attr (void ) o public EvStat::__construct NULL (string $path, double $interval, callable $callback, [mixed $data], [int $priority]) o finalpublicstatic void EvStat::createStopped NULL (string $path, double $interval, callable $callback, [mixed $data], [int $prior- ity]) o public void EvStat::prev (void ) o public void EvStat::set (string $path, double $interval) o public bool EvStat::stat (void ) Inherited methods o public int EvWatcher::clear (void ) o abstractpublic EvWatcher::__construct (void ) o public void EvWatcher::feed (int $revents) o public EvLoop EvWatcher::getLoop (void ) o public void EvWatcher::invoke (int $revents) o public bool EvWatcher::keepalive ([bool $value]) o public void EvWatcher::setCallback (callable $callback) o public void EvWatcher::start (void ) o public void EvWatcher::stop (void ) PROPERTIES
o $interval - Readonly . Hint on how quickly a change is expected to be detected and should normally be specified as 0.0 to let libev choose a suitable value. o $path - Readonly . The path to wait for status changes on. PHP Documentation Group EVSTAT(3)

Check Out this Related Man Page

EVCHECK(3)								 1								EVCHECK(3)

The EvCheck class

INTRODUCTION
EvPrepare and EvCheck watchers are usually used in pairs. EvPrepare watchers get invoked before the process blocks, EvCheck afterwards. It is not allowed to call EvLoop::run or similar methods or functions that enter the current event loop from either EvPrepare or EvCheck watchers. Other loops than the current one are fine, however. The rationale behind this is that one don't need to check for recursion in those watchers, i.e. the sequence will always be: EvPrepare -> blocking -> EvCheck , so having a watcher of each kind they will always be called in pairs bracketing the blocking call. The main purpose is to integrate other event mechanisms into libev and their use is somewhat advanced. They could be used, for example, to track variable changes, implement custom watchers, integrate net-snmp or a coroutine library and lots more. They are also occasionally use- ful to cache some data and want to flush it before blocking. It is recommended to give EvCheck watchers highest( Ev::MAXPRI ) priority, to ensure that they are being run before any other watchers after the poll (this doesn't matter for EvPrepare watchers). Also, EvCheck watchers should not activate/feed events. While libev fully supports this, they might get executed before other EvCheck watchers did their job. CLASS SYNOPSIS
EvCheck EvCheckextends EvWatcher Inherited properties o public$is_active o public$data o public$is_pending o public$priority Methods o public EvCheck::__construct (callable $callback, [mixed $data], [int $priority]) o finalpublicstatic object EvCheck::createStopped (string $callback, [string $data], [string $priority]) Inherited methods o public int EvWatcher::clear (void ) o abstractpublic EvWatcher::__construct (void ) o public void EvWatcher::feed (int $revents) o public EvLoop EvWatcher::getLoop (void ) o public void EvWatcher::invoke (int $revents) o public bool EvWatcher::keepalive ([bool $value]) o public void EvWatcher::setCallback (callable $callback) o public void EvWatcher::start (void ) o public void EvWatcher::stop (void ) PHP Documentation Group EVCHECK(3)
Man Page