powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl - как сделать паузу без загрузки CPU?
5 сообщений из 5, страница 1 из 1
Perl - как сделать паузу без загрузки CPU?
    #38799233
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Считаю скриптом утилизацию CPU:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
my $base = sysctl('kern.clockrate')->{'stathz'};
my $count = sysctl('hw.ncpu');
my $period = 2;
my @start = @{sysctl('kern.cp_times')};
sleep($period);
my @end = @{sysctl('kern.cp_times')};
foreach my $i (0..$count)
{
	my @time = splice(@end,0,5);
	$time[$_] -= $start[$_] foreach (0..$#time);
	splice(@start,0,5);
	$time[$_] = $time[$i]/($period*$base) foreach (0..$#time);
	print Dumper(\@time);
}


Однако при sleep одно из ядер CPU грузится на 100%, что искажает результаты.
Не подскажите, как сделать паузу без утилизации CPU?
________________________
Мы смотрим с оптимизмом...
...в оптический прицел.
...
Рейтинг: 0 / 0
Perl - как сделать паузу без загрузки CPU?
    #38799403
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Perl - как сделать паузу без загрузки CPU?
    #38799422
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И на что там смотреть?
...
Рейтинг: 0 / 0
Perl - как сделать паузу без загрузки CPU?
    #38799460
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.И на что там смотреть?На упоминания альтернативных методов засыпания.
Но вообще-то, очень странно что у тебя sleep грузит процессор.
...
Рейтинг: 0 / 0
Perl - как сделать паузу без загрузки CPU?
    #38799506
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где там альтернатива? usleep отличается только разрешающей способностью.
В Windows такие неблокирующие паузы я делал через SetTimer и события. В Perl скорее всего как-то похоже, но я примеров не нашел.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl - как сделать паузу без загрузки CPU?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]