mirror of
https://github.com/php/php-src.git
synced 2025-08-17 22:48:57 +02:00

The core implementation details are described in win32/nice.c for values sent to proc_nice(), these can however be discussed to maybe comply with those of wmic, Anatol, thoughts? The test supplied uses wmic for testing the functionality, it could potentially fail on systems where either wmic is not available or the system language is not english (as Microsoft tends to translate even CLI programs).
32 lines
803 B
PHP
32 lines
803 B
PHP
--TEST--
|
|
proc_nice() basic behaviour
|
|
--CREDITS--
|
|
Italian PHP TestFest 2009 Cesena 19-20-21 june
|
|
Fabio Fabbrucci (fabbrucci@grupporetina.com)
|
|
Michele Orselli (mo@ideato.it)
|
|
Simone Gentili (sensorario@gmail.com)
|
|
--SKIPIF--
|
|
<?php
|
|
if(!function_exists('proc_nice')) die("skip. proc_nice not available ");
|
|
if(substr(strtoupper(PHP_OS), 0, 3) == 'WIN') die('skip. not for Windows');
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
function getNice($id)
|
|
{
|
|
$res = shell_exec('ps -p ' . $id .' -o "pid,nice"');
|
|
preg_match('/^\s*\w+\s+\w+\s*(\d+)\s+(\d+)/m', $res, $matches);
|
|
if (count($matches) > 2)
|
|
return $matches[2];
|
|
else
|
|
return -1;
|
|
}
|
|
$delta = 10;
|
|
$pid = getmypid();
|
|
$niceBefore = getNice($pid);
|
|
proc_nice($delta);
|
|
$niceAfter = getNice($pid);
|
|
var_dump($niceBefore == ($niceAfter - $delta));
|
|
?>
|
|
--EXPECTF--
|
|
bool(true)
|